Excel VBA 8.30 增加批注和修改批注一样吗?NO!
你还是通过右键来插入单元格批注嘛?VBA瞬间完成
点击上方“Excel和VBA”,选择“置顶公众号”
致力于原创分享Excel的相关知识,源码,源文件打包提供
一起学习,一起进步~~
批注的操作,截止现在已经学习了批量删除批注、批量修改批注,但是可能大家并不满意,作为管理层,每天我们收到的报表非常多,批注的样式也各不相同,那么我们如何将所有的批注都修改成同一样的样式呢?比方说增加相同的前缀等操作呢?这就是我们今天要学习的内容,单元格批注的批量修改
场景说明
还是一样的场景,不变的配方,我们今天更换下目的,我们今天要实现的目的是批量修改单元的批注
上一节,我们留下一个悬念,因为我们大致能够猜想到修改批注,无非就是判断是否存在批注,如果存在就利用
a.Comment.text text:="******"
的方式来重新设置单元格的批注就可以了,那么真的是这样嘛?
试一下就知道了。
代码区
Sub changepizhu()
Dim rng As Range, a As Range
Set rng = Application.InputBox("请选择单元格区域", "需要删除批注的单元格区域", , , , , , 8)
For Each a In rng
a.ClearComments
a.Comment.Text Text:=a.Offset(0, 1).Value & "的成绩"
Next a
End Sub
这是我们按照上节的逻辑思维写出来的代码
看看是不是正确的
很明显,代码在执行的过程中报错了,错就在我们上面说的增加批注的方法
从程序执行的过程来看,增加批注之后,写入批注的方法,并不适合修改批注的场景,那么我们到底应该如何来修改批注呢?
来看下标准答案
Sub changepizhu()
Dim rng As Range, a As Range
Set rng = Application.InputBox("请选择单元格区域", "需要删除批注的单元格区域", , , , , , 8)
For Each a In rng
a.ClearComments
a.AddComment a.Offset(0, 1).Value & "的成绩"
Next a
End Sub
这样才算是成功的执行了批注的修改,并且没有报错,留意到我们最开始的第一个单元格其实施不存在批注的,所以这个批注修改的方法,也是不需要判断是否存在批注的
代码解析
看似简单的单元格的批注的操作,但是却引申出来这么多不同方法,所以VBA的世界还是非常的广大的
今天的代码重点,大家应该也知道了,我们通过前后两个案例相连接的方式,让大家对比着学习了VBA批量修改单元格批注的 方法
a.AddComment s
非常的简单
赞 (0)