在不复制工作表的情况下从另一个工作簿引用 Excel 工作表

Har*_*lsh 1 excel vba

我想知道是否可以在不复制该工作表的情况下从另一本工作簿中引用 Excel 工作表?

情况:我有一些非常大的工作表,里面装满了各种数据,但我不想在我的工作簿中打开它们的副本,因为虽然每个工作簿使用相同的数据源,但它们略有不同。

我有一个 vba 例程,它接受这些数据并为其他代码创建输入文件,vba 希望这些数据在定义的工作表名称上可用。

是否可以让 excel 或 vba 知道当我请求工作表(“Example_1”)时,它知道我的意思是来自不同工作簿的 example_1?

谢谢

mie*_*elk 5

对的,这是可能的。

您需要将这些行添加到您的代码中:

Dim wkb As Excel.Workbook
Dim wks As Excel.Worksheet

Set wkb = Excel.Workbooks("name_of_workbook.xlsx")
Set wks = wkb.Worksheets("Example_1")
Run Code Online (Sandbox Code Playgroud)

现在,每次要引用其他工作簿中的范围时,都需要在wks.之前添加,即:

'Printing value in cell.
wks.Range("A1") = "x"

'Selecting range.
call wks.Range(wks.Cells(1,1), wks.Cells(2,2)).Select
Run Code Online (Sandbox Code Playgroud)