我创建了一个宏,可以从另一个工作簿中查找和获取数据。
宏将写入要复制数据的跟踪工作簿中,第二个打开的工作簿是我将从中复制数据的工作簿。
我将从许多工作簿中复制数据,以便第二个工作簿不断变化。
下面是代码
Sub ggg()
Workbooks(1).Activate
Cells.Find("account").Select
r = Selection.Row
d = Selection.End(xlDown).Row
last = d - r
For i = 1 To last
If i = last Then
s = s & Selection.Offset(1, 0)
Else
s = s & Selection.Offset(1, 0) & ";"
End If
Next i
Workbooks(2).Activate
Range("a1") = s
End Sub
但是,有时存在对象错误,因为工作簿1有时是要从中复制数据的数据工作簿。 因此,在这种情况下,我必须在第一行手动将工作簿名称从1更改为2,在第二行中手动将2更改为1。
我该如何解决这个问题?如果有任何错误,VBA是否可以自动更改代码?