excel vb 怎么从一个未打开的文件中读某个单元格写入当前已打的某个单元格中? 在线等回答.谢谢

2024-11-22 21:02:06
推荐回答(4个)
回答(1):

假设两工作簿在同一文件夹下
其中一个工作簿名为“文件1.xlsx”,它的sheet1,sheet2,sheet3中都有内容
现在要通过一个VBA程序将内容三个表的A1单元格内容都调用到当前工作表的相应位。

Sub test()
Dim a, b, c
Workbooks.Open ThisWorkbook.Path & "/文件1.xlsx"  '打开文件1.xlsx
a = ActiveWorkbook.Sheets(1).Range("a1")   '令a为sheet1的A1
b = ActiveWorkbook.Sheets(2).Range("a1")   '令b为sheet2的A1
c = ActiveWorkbook.Sheets(3).Range("a1")   '令c为sheet3的A1
ActiveWorkbook.Close False     '关闭且不保存
Sheet1.Range("a1") = a
Sheet2.Range("a1") = b
Sheet3.Range("a1") = c
End Sub


也可以用GetObject方法来做

Sub test2()
Dim wb As Workbook
Set wb = CreateObject(ThisWorkbook.Path & "/文件1.xlsx")
With wb
Sheet1.Range("a1") = .Sheets(1).Range("A1")
Sheet2.Range("a1") = .Sheets(2).Range("A1")
Sheet3.Range("a1") = .Sheets(3).Range("A1")
End With
wb.Close
Set wb = Nothing            '释放内存
End Sub

PS:以上资料来源于网站    www 点 zhanzhanrufeng 点 com

回答(2):

后台打开,读完,关闭

回答(3):

只能先打开,读取完,在关闭吧~

回答(4):

引用就可以了