我想要一个宏来隐藏/取消隐藏标注。

目的是有一个信息按钮,一旦按下显示或隐藏信息标注。

问题是我还有其他不想隐藏的箭头和形状。

使用以下代码(1)我可以隐藏所有对象:

Dim sObject As Shape
For Each sObject In ActiveSheet.Shapes
    If sObject.Visible = False Then
        sObject.Visible = True
    Else
        sObject.Visible = False
    End If
Next

使用此代码 (2) 我可以隐藏/取消隐藏特定标注形状
If ActiveSheet.Shapes("Rectangular Callout 6").Visible = False Then
    ActiveSheet.Shapes("Rectangular Callout 6").Visible = True
Else
    ActiveSheet.Shapes("Rectangular Callout 6").Visible = False
End If

我怎样才能让第一个代码 (1) 像第二个代码 (2) 一样运行标注形状?

最佳答案

怎么样:

Dim sObject As Shape
For Each sObject In ActiveSheet.Shapes
   If Not InStr(sObject.Name, "Callout") = 0 Then sObject.Visible = Not sObject.Visible
Next sObject

希望能帮助到你!

关于vba - 使用 VBA 在 Excel 中隐藏/取消隐藏特定对象,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42503030/

10-10 18:48