【发布时间】:2018-08-23 12:47:21
【问题描述】:
我有一张工作表,我想在与我的选择不同的列中更改一系列单元格中的值。我使用 VBA 是因为它是向特定打印机发送信息的代码的一部分。我想让宏也显示选择已打印。
澄清一下:
- 当我选择 F4:F10 时,我希望将单元格 G4:G10 更改为文本值“是”。
- 当我选择 F4:F15 时,我希望将单元格 G4:G15 更改为文本值“是”。
我搜索了论坛,发现/制作了以下内容:
Sheets("INPUT").Select
ActiveCell.Offset(0, 1).FormulaR1C1 = "Yes"
效果很好,但是它只改变一个单元格的值,而不是一系列单元格。
有没有办法将一系列单元格更改为“是”而不是一个单元格?
【问题讨论】:
-
添加到@QHarr 的答案,您需要了解
ActiveCell和Selection之间的区别。在您的代码中,您使用ActiveCell,它总是一个单元格,而Selection可以是多个单元格——甚至是不相邻的单元格(在这种情况下,您需要使用Areas属性)。事实上,Selection可以是任何东西 - 单元格、形状、图表(嗯,图表 是 形状 :) )等等。