运行时错误438从一个工作簿复制到另一个时

我正在运行此代码将数据从一个工作簿复制到另一个主要工作簿,但不断得到运行时错误438在第12行。什么事? 提前致谢!

1 Sub copydata() 2 Dim wbk As Workbook 3 Dim wbk2 As Workbook 4 strFirstFile = Userform1.path.Text 5 Set wbk2 = ThisWorkbook 6 Set wbk = Workbooks.Open(strFirstFile) 7 With wbk.Sheets(1) 8 Cells(1, 1).Activate 9 ActiveCell.CurrentRegion.Select 10 Selection.Copy 11 End With 12 wbk2.Sheets("UAL").Range("G1").Paste 13 Application.CutCopyMode = False 14 wbk.Close 15 16 End Sub 

Range不支持方法Paste 。 使用这种模式:

 Selection.Copy Destination:=wbk2.Sheets("UAL").Range("G1") 

或者你可以使用PasteSpecial

 wbk2.Sheets("UAL").Range("G1").PasteSpecial xlPasteAll 

顺便说一句,避免使用Select语句。 你可以使用这个代替7-12行(这是不正确的代码,因为你错过了Cells(1, 1)等)之前的周期:

 With wbk.Sheets(1) .Cells(1, 1).CurrentRegion.Copy Destination:=wbk2.Sheets("UAL").Range("G1") End With