我在excel的不同实例中有两个excel文件。我想从一个excel实例获取数据到另一个实例。这看起来很简单,因为我知道我想从中提取数据的文件的路径。但是,我想从中提取数据的文件由一个单独的程序使用,它打开我要从中拉出的文件(模板),填充它,但不保存它。所以每次这个外部程序运行时,它都使用我想要从中提取数据的文件,但由于它从不保存它,我很难从模板文件中提取数据。我已经使用了getObject()函数,它成功地从文件中提取数据,因为我知道文件路径,但字段当然是空的,因为当外部程序使用文件时,它只填充数据但从不保存它。我怎么能做我要问的事?
答案 0 :(得分:0)
以Scotts为基础suggestion
GetObject
来引用它.SaveCopyAs
保存此代码包含在Excel实例中运行的文件
Sub Demo()
Dim wbRemote As Workbook
Dim wbLocal as Workbook
' Get reference to the workbook running in the other instance of Excel
Set wbRemote = GetObject("C:\data\Temp\TemplateBook.xlsx")
' Save a copy
wbRemote.SaveCopyAs "C:\data\Temp\Temp.xlsx"
' remove reference
Set wbRemote = Nothing
' open copy in this instance
Set wbLocal = Application.Workbooks.Open("C:\data\Temp\Temp.xlsx")
' work with object wbLocal
' ...
End Sub