我正在运行此代码将数据从一个工作簿复制到另一个主工作簿,但在第12行继续收到运行时错误438.是怎么回事?提前谢谢!
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
答案 0 :(得分:1)
Range
不支持方法Paste
。使用这种模式:
Selection.Copy Destination:=wbk2.Sheets("UAL").Range("G1")
或者您可以使用PasteSpecial
:
wbk2.Sheets("UAL").Range("G1").PasteSpecial xlPasteAll
BTW,避免使用Select
语句。你可以使用这一行而不是第7-12行(在你的代码中不正确,因为你在.
之前错过了句号Cells(1, 1)
等等):
With wbk.Sheets(1)
.Cells(1, 1).CurrentRegion.Copy Destination:=wbk2.Sheets("UAL").Range("G1")
End With