如何在当前打开的Excel文件中打开另外一个excel文件,并取得workbook对象?

c104 2006-01-26 11:47:07
如,我在打开的xls1中打开xls2,下面是xls1中某一个按钮的代码
我如何获取新打开的xls2文件的workbook对象?
我不希望激活新打开的xls2文件的workbook和sheet,目的是取xls2文件中的一些数据填充到xls1中去

Sub openFile()
Dim Excel As Variant
Dim ExcelApp As Variant
Dim ExcelSheets As Variant
Dim ActiveSheet As Variant
Dim Workbook As Variant

Set ExcelApp = CreateObject("Excel.Application")
Call Excel.Application.Workbooks.Open(xls2FileName) 'xls2FileName是需要打开的excel文件路径
Set Workbook = ExcelApp.Workbook(2) '这句就报错,无法获取Workbook对象
...

End Sub
...全文
351 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
nightstu 2006-02-24
  • 打赏
  • 举报
回复
strFileName = ThisWorkbook.Path & "\123.xls"
Set xlsApp = CreateObject("Excel.Application")
Set xlsWorkBook = xlsApp.Workbooks.Open(strFileName)
over
c104 2006-01-27
  • 打赏
  • 举报
回复
不行的,无法在当前打开的xls文件中激活另外一个xls文件。
是不是excel的机制就是这样?
无法实现在某一个xls文件的宏程序里去操作另外一个xls文件里的数据?
雨男Mohican 2006-01-26
  • 打赏
  • 举报
回复
试试加入下面的代码:
Call Excel.Application.Workbooks.Open(xls2FileName) 'xls2FileName是需要打开的excel文件路径
Windows(xls2FileName).Activate
Set Workbook = ExcelApp.Workbook(2) '这句就报错,无法获取Workbook对象
...

5,139

社区成员

发帖
与我相关
我的任务
社区描述
其他开发语言 Office开发/ VBA
社区管理员
  • Office开发/ VBA社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧