为什么以下行有效:
Range("A1,B2").Interior.Color = someColorAsLong
以下没有:
dim someVariableName as Long
someVariableName = Range("A1,B2").Interior.Color
我甚至尝试过指定活动工作表,工作簿和活动工作表..我有时会超出范围异常(仍然是1004),但主要是对象全局失败的方法(1004)。
答案 0 :(得分:1)
我能够在以下情况下重现您的错误:
插入图表表(手动完成)并使其保持活动状态。现在,您的代码将始终返回Method Range of object _Global failed (1004)
这是你得到的错误的一个可能的答案。要避免此错误,请确保明确指定工作簿和工作表。
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets("Sheet1")
someVariableName = ws.Range("A1,B2").Interior.Color
明确指定工作簿和工作表比使用ActiveSheet
更好,因为用户可以激活图表工作表。虽然在您的情况下,您在工作表上有代码,但不应该发生。