我在使用此代码时出现上述错误...我不确定它有什么问题。有人可以帮忙吗?
此行错误:
If Sheets(“TimeRecord”).Cells(i + 1, 1).Value >= Sheets("Resources").Range("C4").Value Then
整个代码:
Sub ProduceResourceReport()
Dim i As Integer
Dim j As Integer
j = 8
For i = 1 To 1000
If Sheets(“TimeRecord”).Cells(i + 1, 1).Value >= Sheets("Resources").Range("C4").Value Then
Cells(j, 1).Value = Sheets("TimeRecord").Cells(i + 1, 15)
j = j + 1
End If
Next i
End Sub
答案 0 :(得分:2)
错误表示活动工作簿中缺少其中一个工作表。
确保模块顶部有Option Explicit
。同时删除“TimeRecord”周围的引号并重新输入。他们错了。我认为VBA将“TimeRecord”视为未声明的变量,而不是将其视为工作表的名称。
选项明确对于良好的编码是必需的。
Sub test()
Dim i
i = 1
If Sheets("TimeRecord").Cells(i + 1, 1).Value >= Sheets("Resources").Range("C4").Value Then
Debug.Print "no error"
End If
End Sub