用VFP实现EXCEL不同文件间工作表的复制最终解决方案
2009-09-28 21:07
405 查看
今天查阅了很多资料,试验了好多方法,搞了一个下午,终于搞定,不敢私藏,与大家分享。
正确方法:
m.err=.f. on error m.err=.t. eole=create("excel.application") *eloe1=create("excel.application") eole.visible=.t. IF m.err=.t. messagebox( "访问Execl失败!请检查你的系统是否正确安装 Excel 软件",48,"提醒") wait clear return ENDI * eole.Workbooks.OPEN('BOOK1.XLS')&&打开工作表一 eole.Workbooks.OPEN('BOOK2.XLS') &&打开工作表二 *下面是复制工作表的正确语法:
FILENAME='book1.xls' eole.Sheets(1).copy(eole.Workbooks("&FILENAME").Sheets(1))
*或者直接
eole.Sheets(1).copy(eole.Workbooks("BOOK1.XLS").Sheets(1))
以下都是错误的语法:
eole.Sheets(1).copy(eole.Workbooks("D:/BOOK1.XLS").Sheets(1)) &&后面部分不能带路径,用宏替换时也不能有路径!
[/code]
eole.Workbooks("BOOK2.XLS").Sheets(1).copy(eole.Workbooks("BOOK1.XLS").Sheets(1)) &&前面部分也不能这样写!
*同理,如果把COPY改为MOVE 就变成了在不同文件中移动工作表。
*心得:看来改写用宏录制的东西需要注意的很多,失之毫厘,谬以千里。
另外一种拷贝工作表的方法,但不能完美复制格式。
oexcel1=createobject(/'excel.application/') oexcel1.workbooks.open("a.xls") oexcel1.worksheets("sh1").usedrange.copy oexcel2=createobject(/'excel.application/') oexcel2.Workbooks.Add oexcel2.sheets.add oexcel2.activesheet.paste 最后一句代码若用paste方法,无法复制格式,目的工作表只有内容与源表一样,其他面目全非;
若用pastespecial方法,目的表成了一个无法编辑的对象、变成了图片。 如果pastespecial()括号里面加一些参数,可以实现选择性粘贴,但也不能复制格式。
相关文章推荐
- python实现文件分组复制到不同目录的例子
- 用VBA实现把多个Excel文件合并到一个Excel文件的多个工作表(Sheet)里
- VBA实现保存Excel多个工作表中的选择区域为CSV文件
- C#实现联系不同版本的EXCEL,excelPath是获取到的文件名称
- Java实现不同excel格式(*.xls、*.xlsx)文件的读取
- Excel文件中核对两个工作表中不同内容
- python实现文件分组复制到不同目录的例子
- 【集中工作薄】 当前文件夹中所有Excel文件中 多个工作簿的第一个工作表 复制到工作簿中
- Java web中不同浏览器间导出Excel文件名称乱码问题解决方案
- CI中在Linux服务器下面实现文件导出Excel的方法解决方案
- EXCEL:将文本文件数据分解到EXCEL中的不同工作表
- Java 实现导出excel表 POI/Java实现不同excel格式(*.xls、*.xlsx)文件的读取
- StarUML 在不同文件间 复制/copy/拷贝 ,带有圈 M 的解决方案
- Java web中不同浏览器间导出Excel文件名称乱码问题解决方案
- javascript实现从Excel文件向Web表单的某列多行数据复制
- 空间复杂度,实现从excel导出到txt文件中的java代码自动构建,逻辑条件不同实现则不同
- 如何使用VBA实现将多个Excel文件中的数据复制到某个Excel文件中
- [原创]VBA实现汇总excel,将多个Excel文件内容复制到一个Excel文件中
- 在MVC中实现和网站不同服务器的批量文件下载以及NPOI下载数据到Excel的简单学习
- Java IO 之 FileReader FileWriter 实现字符文件的复制(处理FileWriter新建文件失败的问题)