| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 762 人关注过本帖
标题:vfp控制excel,将a.xls中sheet1第C列粘贴到b.xls中sheet1第C列
只看楼主 加入收藏
zengjun81357
Rank: 2
等 级:论坛游民
帖 子:73
专家分:20
注 册:2011-3-27
结帖率:87.5%
收藏
已结贴  问题点数:10 回复次数:8 
vfp控制excel,将a.xls中sheet1第C列粘贴到b.xls中sheet1第C列
vfp控制excel,将a.xls中sheet1第C列粘贴到b.xls中sheet1第C列(从第三行开始的所有行,行数不定)(我用vfp处理excel数据后结果不会写回原表,最后只好手工粘贴)
搜索更多相关主题的帖子: excel 
2013-02-04 11:27
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:3 
myeole=CREATEOBJECT("Excel.application")
WITH myeole
    .Workbooks.Open("I:\a.xls")
*    .Workbooks.open(getfile("xls")) &&打开指定路径下的工作簿
    .visible=.t.
    .Sheets(1).Columns("C:C").Copy
    .Workbooks.Open("I:\b.xls")
    .Sheets(1).Columns("C:C").Select
    .ActiveSheet.Paste
*    .ActiveWorkbook.Close(.t.)
*    .quit                     &&退出Excel
ENDWITH

相互学习,互相交流,共同提高。
2013-02-04 12:59
zengjun81357
Rank: 2
等 级:论坛游民
帖 子:73
专家分:20
注 册:2011-3-27
收藏
得分:0 
以下是引用qjbzjp在2013-2-4 12:59:09的发言:

myeole=CREATEOBJECT("Excel.application")
WITH myeole
    .Workbooks.Open("I:\a.xls")
*    .Workbooks.open(getfile("xls")) &&打开指定路径下的工作簿
    .visible=.t.
    .Sheets(1).Columns("C:C").Copy
    .Workbooks.Open("I:\b.xls")
    .Sheets(1).Columns("C:C").Select
    .ActiveSheet.Paste
*    .ActiveWorkbook.Close(.t.)
*    .quit                     &&退出Excel
ENDWITH
谢谢指点!
要求是复制C列从第三行开始的所有行,就是不复制第一行、第二行(标题不能盖)
2013-02-04 13:20
qjbzjp
Rank: 13Rank: 13Rank: 13Rank: 13
来 自:尧的故乡
等 级:贵宾
威 望:48
帖 子:1914
专家分:4397
注 册:2007-3-14
收藏
得分:0 
myeole=CREATEOBJECT("Excel.application")
WITH myeole
    .Workbooks.Open("I:\a.xls")
*    .Workbooks.open(getfile("xls")) &&打开指定路径下的工作簿
    .visible=.t.
    .Sheets(1).Select
    WITH .activesheet.usedrange
        n=.columns.count
        r=.rows.count
    ENDWITH
    En='"'+"C3:"+STRTRAN(myeole.Cells(r,n).Address(,.f.),"$")+'"'
    .ActiveSheet.Range(&En).Copy
    .Workbooks.Open("I:\b.xls")
    .Sheets(1).Select
    .ActiveSheet.Range(&En).Select
    .ActiveSheet.Paste
*    .ActiveWorkbook.Close(.t.)
*    .quit                     &&退出Excel
ENDWITH
收到的鲜花
  • zengjun813572013-02-05 20:32 送鲜花  3朵   附言:谢谢你的回复!按你的方法实现了第C列粘帐, ...

相互学习,互相交流,共同提高。
2013-02-04 16:57
wasun2012
Rank: 2
等 级:论坛游民
帖 子:12
专家分:17
注 册:2012-11-17
收藏
得分:3 
以下是引用zengjun81357在2013-2-4 13:20:22的发言:

谢谢指点!
要求是复制C列从第三行开始的所有行,就是不复制第一行、第二行(标题不能盖)


*!*-----------------------
程序代码:
ACopyToB("D:\a.xls","D:\b.xls")
*!*---------------------
FUNCTION ACopyToB( tcFileSource as String ,tcFileDestination as String )

LOCAL oExcel AS "excel.application"
LOCAL nDataRows as Integer 

oExcel=Createobject('Excel.application')
oExcel.DisplayAlerts=.f.
oExcel.Workbooks.Open(tcFileSource) &&打开源文件
nDataRows=oExcel.SHEETS(1).UsedRange.Rows.Count &&有数据的总行数
cRange=["C3:C]+TRANSFORM(nDataRows)+["]
oExcel.range(&cRange).select &&选中数据
oExcel.Selection.Copy
oExcel.Workbooks.Close  &&关闭源表
*!*
oExcel.Visible=.T.
oExcel.Workbooks.Open(tcFileDestination) &&打开目标文件
oExcel.Worksheets("sheet1").Activate
oExcel.Range("C3").PasteSpecial(-4104)
oExcel.ActiveWorkbook.Save
*oExcel.Workbooks.Close 
*oExcel.Quit 
Release oExcel 

 
收到的鲜花
  • zengjun813572013-02-05 20:34 送鲜花  3朵   附言:谢谢你的回复!按你的方法实现了我的要求! ...
2013-02-04 18:48
青春无限
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:江苏
等 级:贵宾
威 望:24
帖 子:3452
专家分:19340
注 册:2012-3-31
收藏
得分:3 
看看帮顶

学 会看代码…学习写程序…学会搞开发…我的目标!呵呵是不是说大话啊!!一切皆可能
2013-02-04 19:10
zengjun81357
Rank: 2
等 级:论坛游民
帖 子:73
专家分:20
注 册:2011-3-27
收藏
得分:0 
以下是引用wasun2012在2013-2-4 18:48:42的发言:

 
 
*!*-----------------------
 
ACopyToB("D:\a.xls","D:\b.xls")
*!*---------------------
FUNCTION ACopyToB( tcFileSource as String ,tcFileDestination as String )
 
LOCAL oExcel AS "excel.application"
LOCAL nDataRows as Integer  
 
oExcel=Createobject('Excel.application')
oExcel.DisplayAlerts=.f.
oExcel.Workbooks.Open(tcFileSource) &&打开源文件
nDataRows=oExcel.SHEETS(1).UsedRange.Rows.Count &&有数据的总行数
cRange=["C3:C]+TRANSFORM(nDataRows)+["]
oExcel.range(&cRange).select &&选中数据
oExcel.Selection.Copy
oExcel.Workbooks.Close  &&关闭源表
*!*
oExcel.Visible=.T.
oExcel.Workbooks.Open(tcFileDestination) &&打开目标文件
oExcel.Worksheets("sheet1").Activate
oExcel.Range("C3").PasteSpecial(-4104)
oExcel.ActiveWorkbook.Save
*oExcel.Workbooks.Close  
*oExcel.Quit  
Release oExcel  
 
谢谢回复。你的方法实现了我的要求!
2013-02-05 20:33
zengjun81357
Rank: 2
等 级:论坛游民
帖 子:73
专家分:20
注 册:2011-3-27
收藏
得分:0 
回复 7楼 zengjun81357
追加一个问题:怎样保持b.XLS中C列的单位格格式不变(即数据用a.xls中C列数据代替,但单位格格式保持原来的不变)
2013-02-05 22:40
wasun2012
Rank: 2
等 级:论坛游民
帖 子:12
专家分:17
注 册:2012-11-17
收藏
得分:0 
<p>把此句oExcel.Range("C3").PasteSpecial(-4104)&nbsp;<br>改为 oExcel.Range("C3").PasteSpecial(-4163,-4142,.f.,.f.) &amp;&amp;只粘贴值忽略格式<br></p><p>&nbsp;<br></p><p><br>&nbsp;</p>
2013-02-08 00:20
快速回复:vfp控制excel,将a.xls中sheet1第C列粘贴到b.xls中sheet1第C列
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035174 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved