当我在vba中运行以下代码
时,我收到运行时错误1004MsgBox Workbooks(SourceFile1).Worksheets(WS).Range(Cells(ThisRow, ThisColumn), Cells(ThisRow, ThisColumn)).Interior.Color
但在以下代码中不会出现任何错误:
MsgBox Workbooks(DestinationFile).Sheets(1).Range(Cells(I, 14), Cells(I, 14)).Interior.Color
SourceFile1在我编码的时候打开了。另外,ThisRow显示值9,ThisColumn在调试模式下显示为11
有解决方法吗?
由于
答案 0 :(得分:1)
假设您的变量合适,您的单元格调用未通过工作表正确限定 - 您需要:
With Workbooks(SourceFile1).Worksheets(WS)
MsgBox .Range(.Cells(ThisRow, ThisColumn), .Cells(ThisRow, ThisColumn)).Interior.Color
End With
或者在这种情况下,因为您只查看一个单元格:
Msgbox Workbooks(SourceFile1).Worksheets(WS).Cells(ThisRow, ThisColumn).Interior.Color