我写了一个vba代码来隐藏/取消隐藏我分配给“按钮”的活动工作表中的图表/列表框,或者只是从Excel中的“插入”选项卡。此代码适用于1形状,但我无法使其与多个工作。我是VBA的新手,所以我不确定所有的语法细节。下面是我有:隐藏/取消隐藏图表/框的VBA代码
Sub OverviewB()
With ActiveSheet.Shapes("Rounded Rectangle 1").TextFrame2.TextRange.Characters
If .Text = "Hide Overview" Then
.Text = "Show Overview"
ActiveSheet.Shapes("Chart 20", "List Box 1", "Chart 19", "List Box 3", "Chart 22", "List Box 4", "Chart 24", "List Box 5").Visible = False
Else
.Text = "Hide Overview"
ActiveSheet.Shapes("Chart 20", "List Box 1", "Chart 19", "List Box 3", "Chart 22", "List Box 4", "Chart 24", "List Box 5").Visible = True
End If
End With
End Sub
我有一个行分隔符“_”在我的图表/列表框名称的中间,这样它不宽,但我还是把说出来,因为我认为它可能导致一些错误。
任何人都可以看到语法错误在这里?我收到的错误是: “运行时错误450”:错误的参数数量或无效的属性分配。
指定的项目它已经我已经好久没做过任何的Excel编程,但我认为你需要Shapes.Range(... )。 ActiveSheet.Shapes只是给你一个集合,你需要从它创建一个Range对象。 – Mick