方法很多,说个最简单易懂的
登录 | 论坛导航 -> 华新鲜事 -> 求学狮城 | 本帖共有 2 楼,分 1 页, 当前显示第 1 页 : 本帖树形列表 : 刷新 : 返回上一页
<<始页  [1]  末页>>
作者:7-UP (等级:3 - 略知一二,发帖:855) 发表:2009-03-31 14:39:40  楼主  关注此帖
Excel Macro expert please come ini'm new to macro. is it possible to write a macro which can read data from another excel file? say macro is in file1.xls, i need to read data from file2.xls many thanks.
方法很多,说个最简单易懂的
比如说,如果你要把c盘file2里的一个数据表读进file1 spreadsheet1

如果没啥特别的要求,直接用
file1.Cells(i, j).Formula = "='C:\[file1.xls]spreadsheet1'!" & Cells(m, n).Address

(i, j)是file1数据的位置,(m, n)是file2相对应的数据位置
小白,你在哪尼。。。
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
作者:7-UP (等级:3 - 略知一二,发帖:855) 发表:2009-03-31 14:55:48  2楼 评分:
方法很多,说个最简单易懂的比如说,如果你要把c盘file2里的一个数据表读进file1 spreadsheet1 如果没啥特别的要求,直接用 file1.Cells(i, j).Formula = "='C:\[file1.xls]spreadsheet1'!" & Cells(m, n).Address (i, j)是file1数据的位置,(m, n)是file2相对应的数据位置
不好意思,写错了 :P
把c盘file2 spreadsheet1里的一个数据表读进file1 spreadsheet1
在file1下写macro:
spreadsheet1.Cells(i, j).Formula = "='C:\[file2.xls]spreadsheet1'!" & Cells(m, n).Address

(i, j)是file1数据的位置,(m, n)是file2相对应的数据位置


很久很久没写,有点忘了,好像上述command需要file2是打开状态。。。所以可以加这么几行:
' open file2
ChDir "C:"
Workbooks.Open Filename:="C:\file2.xls"

'copy data
...
spreadsheet1.Cells(i, j).Formula = "='C:\[file2.xls]spreadsheet1'!" & Cells(m, n).Address
...

'close file2
Workbooks.Close Filename:="C:\file2.xls"
欢迎来到华新中文网,踊跃发帖是支持我们的最好方法!原文 / 传统版 / WAP版所有回复从这里展开收起列表
论坛导航 -> 华新鲜事 -> 求学狮城 | 返回上一页 | 本主题共有 2 篇文章,分 1 页, 当前显示第 1 页 | 回到顶部
<<始页  [1]  末页>>

请登录后回复:帐号   密码