带单元格参数的 VBA Excel Range()

标签 vba excel

为什么以下不起作用:

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/

相关文章:

excel - 使用多个变量在循环内循环

java - 从合并单元格的 Excel 文件中获取数据并存储在 MySQL 数据库中

Excel 2010 VBA 创建 ActiveX ListBox 给出 'Object doesn' t 支持此属性或方法'

vba - 用于启用/禁用表单中其他复选框的复选框

arrays - 如果 AC-AF 列包含空白,则剪切并粘贴行

excel - 如何根据相同的唯一标识符将 Excel 工作表的一列放入另一列

c# - 无法加载类型 Microsoft.Office.Interop.Excel._Application

java - 为什么 Apache poi 的 Workbook.close() 方法将内容写入输入文件?

正则表达式匹配日期月份和年份

Excel 宏 - 自动电子邮件