具有.cells属性错误的多个范围

所以我有下面的代码来使用单元属性select2个范围,因为variables的值基于comboboxselect而改变:

var1 = Worksheets("Sheet1").ComboBox1.ListIndex var2 = Worksheets("Sheet1").ComboBox2.ListIndex Dim oRange As Range Set oRange = Union(Worksheets("Graphs").Range(Cells(1, 1), Cells(20, 1)), Worksheets("Graphs").Range(Cells(1, var1), Cells(20, var2))) ORange.Value = "Test" 

当我运行上面的代码时,“Graphs”工作表处于激活状态,它运行平稳,没有任何错误,但是当我从“Sheet1”运行时,出现运行时1004'应用程序定义或对象定义'错误。

我不想使用Worksheets("Graphs").Activate行,因为我不希望它在执行代码时在工作表之间跳转。

我将不胜感激,如果有人可以善意澄清为什么代码失败时,从另一个工作表运行它,而不是运行“graphics”工作表激活。

我打开一个解决方法来select2个范围。

这个语法是错误的:Set oRange = Union(Worksheets(“Graphs”)。Range(Cells(1,1),Cells(20,1)),Worksheets(“Graphs”)。Range(Cells(1,var1),单元格(20,var2)))

你还没有说Cell(1,1)属于哪张纸。 它假定活动工作表。 但它是在一个参考图表(不活跃)。 这可能是错误的原因。