为什么以下不起作用:
Range(Cells(1,1)).Value = 3
Cells(1,1)
本质上应该与使用 A1
相同对吗?
(我意识到我可以这样做 Cells(1,1).Value = 3
,但我只是好奇为什么它不起作用。)
我阅读了 MSDN 条目,它显示第一个参数必须是 A1
风格,但类似这样的东西确实有效:
Range(Cells(1,1), Cells(2,3)).Value = 2
完全困惑。
最佳答案
当 Range
与单个参数一起使用时,该参数将被解释为范围名称。
Range(Cells(1,1))
与使用相同
Range(Cells(1,1).Value)
因此,您只会得到一个结果,即 Cells(1,1)
的值是 A1
样式的有效范围地址
仅当传递两个范围参数时,它们才会被解释为范围的角点。
关于带单元格参数的 VBA Excel Range(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17636170/