这是我的第一个VBA脚本,所以我可能会遗漏一些非常基本的东西。但是,我已经搜索了这个问题,所提出的解决方案似乎都不适合我的情况。我要做的就是从一个工作簿中复制一列数据,并在转置时将这些值仅粘贴到另一个工作簿。当我运行宏时,我得到错误“运行时错误'1004':Range类的PasteSpecial方法失败”。
这是我的代码:
Sub GetEverything()
Dim fPATH As String, fNAME As String
Dim CurrentBook As Workbook
Dim DestBook As Workbook
Dim number As Double
fPATH = "\\NetworkShare\Path\to\file\"
Set DestBook = ThisWorkbook
For i = 1 To 31
fNAME = "TimeStep " & i & ".xlsx"
Set CurrentBook = Workbooks.Open(fPATH & fNAME)
CurrentBook.Sheets("FFT Normal Force").Range("E2:E257").Copy
number = i + 2
DestBook.Sheets("Sheet2").Range("B" & CStr(number)).PasteSpecial Paste:=x1PasteValues, Operation:=x1None, SkipBlanks:=False, Transpose:=True
CurrentBook.Close False
Next i
End Sub
任何帮助将不胜感激!我也有兴趣学习,所以我不仅想知道什么是错的,而且也知道为什么。
该行发生错误 DestBook.Sheets(“Sheet2”)。范围(“B”和CStr(数字))。PasteSpecial Paste:= x1PasteValues,Operation:= x1None,SkipBlanks:= False,Transpose:= True