excel - 使用 For Each 循环(VBA Excel)向一行中的每个单元格添加注释
问题描述
我正在尝试使用 For Each 循环向 Excel 工作表中第二列的每个单元格添加注释。我想将单元格地址(例如 $B$1)写入评论。到目前为止,这是我的代码,但它不起作用。我不知道出了什么问题。抱歉,我是菜鸟,不知道如何使循环第二行中的单元格的引用起作用:
Sub TestZelladresse()
Dim rng As Range
Dim cell As Range
Set rng = Columns(2)
For Each cell In rng
.AddComment (Address(cell))
Next cell
End Sub
解决方案
正如 BigBen 指出的那样,Address
它是范围对象的属性,而不是您将范围传递给的函数。
您不能将 aFor Each
与Columns
Range 对象一起使用,因为它将循环遍历列而不是列中的单元格(再次感谢 BigBen),并且您不能像这样一次性向范围添加注释。此外,BigBen 还指出,您不想循环遍历整个列,这是很多单元格。
最后,您需要将要从中调用方法/属性的对象包含在该行中,除非您使用 aWith
它只是同一事物的一些语法糖。
所以在一起是这样的:
Sub TestZelladresse()
Dim rng As Range
Dim cell As Range
Set rng = Range(Cells(1, 2), Cells(Cells(Rows.Count, 2).End(xlUp).Row, 2))
For Each cell In rng
cell.AddComment cell.Address
Next cell
End Sub
推荐阅读
- excel - 在剩余日期发送带有附件的 Outlook 电子邮件
- ios - 如何在 CocoaPods 中为 pod lib create 设置 Github 用户名
- ios - swift:motionEnded 不触发或真实设备
- java - 即使我将 fetchSize 设置为 1000,NamedParameterJdbcTemplate 也不起作用。它从 oracleDB 中一一获取
- ios - 如何在 Swift 中使用 RxBluetoothKit?
- java - Eclipselink JPA MySQL 防止事务并发
- php - 当模型具有数据库中不存在的脏属性时,雄辩的更新方法会引发错误
- c++ - Win32 可滚动容器
- jmeter - 使用 Jmeter 设置每秒恒定请求
- c# - IdentityServer4 IDX10803:无法创建以获取配置