[英]Run Time Error '1004': Select method of Range Class failed using ThisWorkbook
[英]Error 1004 on Excel.Workbook object set as ThisWorkbook while using Select method
我无法解决这个问题。 我可以发誓之前我已经做过无数次了,但是由于某种原因,它总是使我误解。
问题是这样的:
Dim FromPath As String
Dim ToPath As String
Dim wb As Excel.Workbook
Dim curr_wb As Excel.Workbook
Dim StrFile As String
Set curr_wb = ThisWorkbook
Set wb = Workbooks.Open(FromPath & StrFile)
'grabbing some data from one file
wb.Sheets("Customer Information").Range("A2:AA2").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
'pasting it on current file
curr_wb.Sheets("Sheet1").Range("A1").Select '<--------error 1004: select method of range failed
'''''''''' The rest of the code not relevant to problem ''''''''''''
现在,我无法为自己的一生弄清楚为什么会失败。 我查看“本地”窗口,可以看到curr_wb确实设置为运行宏的工作簿。 此工作簿中也存在“ Sheet1”。 curr_wb和wb变量应该是相同类型的数据类型,select方法如何在一个方法上起作用而在另一方法上不起作用?
非常感谢您的帮助,
正如SJR所评论的,如果我在进行选择之前立即设置curr_wb.Activate,则此代码有效。
您可以将复制/粘贴代码减少为
With wb.Sheets("Customer Information")
.Range("A2:AA2", .Range("A2:AA2").End(xlDown)).Copy curr_wb.Sheets("Sheet1").Range("A1")
End With
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.