我有一个表格,其中包含使用带有多个注释的VBA创建的过滤器。所有评论都很重要,并且有大量数据。我试图找到一种方法来避免应用过滤器时出现错误消息。我知道如果我循环整个列并设置
单元格Comment.Shape.Placement = xlMoveAndSize
应该可以使用,但有没有办法像这样选择整个范围?
masterSheet.Columns(columnExtension).Comment.Shape.Placement = xlMoveAndSize
我也尝试过这个背景:
'Final formating -----------------------------------------------
masterSheet.Activate
masterSheet.Columns(columnExtension).Font.Size = 12
masterSheet.Columns(columnExtension).Font.Bold = True
masterSheet.Columns(columnExtension).NumberFormat = "0"
masterSheet.Columns(columnExtension).HorizontalAlignment = xlCenter
ActiveSheet.UsedRange.SpecialCells _
(xlCellTypeComments).Comment.Shape.Placement = xlMoveAndSize
masterSheet.Columns.AutoFit
答案 0 :(得分:2)
我找不到一种方法可以同时做所有事情...所以我只是写了循环,它有效,但......
'// Change each comment to "move and size with cells"
For Each cellComment In ActiveSheet.Comments
cellComment.Shape.Placement = xlMoveAndSize
Next cellComment
这可能对某人有用..
答案 1 :(得分:0)
使用SpecialCells
范围对象对我来说也很有用,只迭代包含注释的单元格。
Sub Test2()
Dim rng As Range
Dim cl As Range
Set rng = ActiveSheet.UsedRange.SpecialCells(xlCellTypeComments)
For Each cl In rng.Cells
cl.Comment.Shape.Placement = xlMoveAndSize
Next
End Sub