我仍在学习VBA,但是我知道这很可能是一个简单的错误,我希望获得一些帮助来解决此错误代码。我为替换每天更改其名称的工作簿而创建的变量“ isum”出现错误438。由于存在“&”,因此无法使用“ filepath&wb”打开它,因此我为两者都创建了一个变量。我正在尝试从一个工作簿复制工作表上的部分,然后粘贴到另一工作簿的另一工作表区域。这是我的代码:
Sub Summary()
Application.ScreenUpdating = False
'create variables
Dim wb As String
Dim filepath As String
Dim isum As Workbook
Dim CBD As Workbook
'variables for file with changing date in name title
filepath = "\\main\stuff\Summary\"
wb = "Today Summary " & Format(Date, "m.dd") - 0.01 & ".xlsb"
'open both
Set isum = Workbooks.Open(filepath & wb)
Set CBD = Workbooks.Open("\\main\other\CBD forecast.xlsx")
'copy
CBD.Sheets("Sheet3").Range("B3:J3000").Copy
'Now, transfer values from x to y:
isum.Sheets("Sheet7").Range("A2").Paste 'error 438, it copies but does not paste
'Close x:
CBD.Close
Application.ScreenUpdating = True
End Sub
答案 0 :(得分:0)
wb文件为星期五的日期为“今日摘要6.29”。
id score rating i
1 A 1 130 1
2 C -2 139 1
3 B 9 188 1
4 A 26 156 1
5 A -9 147 1
6 D 10 198 2
7 D 8 206 2
8 C 5 146 2
9 A 36 165 2
10 C 17 163 2
11 B 14 193 3
12 B -15 178 3
13 B -4 174 3
14 A -22 107 3
15 B -13 161 3
您似乎正在将测试字符串的某些部分连接到所需的工作簿名称中。
wb = "Today Summary " & Format(Date, "m.dd") - 0.01 & ".xlsb"
还建议在粘贴到单个目标时使用“复制”操作的Destination参数。
'variables for file with changing date in name title
filepath = "\\main\stuff\Summary\"
wb = "Today Summary " & Format(Date, "m.dd") & ".xlsb"