无法设置 excel VBA 工作表变量

Unable to set excel VBA worksheet variable

我正在尝试将源工作表变量设置为另一个工作簿 (DataSource1.xlsx) 中的目标工作表变量,目的是最终使用它来读取目标工作表并执行一些计算,但它给了我下标超出范围错误。

这是我的代码

Sub GenerateReport()

Dim source As Worksheet

Dim path As String    
Set source= Workbooks(ThisWorkbook.path & "\DataSource1.xlsx").Sheets("Sheet1")

'path = ThisWorkbook.path

'Set wb = Workbooks.Open(ThisWorkbook.path & "\DataSource1.xlsx")

Dim one As Integer

one = 10

End Sub

文件都放在同一个文件夹下,我检查过没有命名或路径错误,为什么会这样?

编辑

这是我的项目在 GSerg 评论后的样子

如果工作簿已经打开,需要不带路径的名称引用:

Set source = Workbooks("DataSource1.xlsx").Sheets("Sheet1")

如果工作簿还没有打开,您需要先打开它:

Set source = Workbooks.Open(ThisWorkbook.path & "\DataSource1.xlsx").Sheets("Sheet1")