Скройте одну группу, пока другая видна vba

#excel #vba #excel-2019

Вопрос:

У меня есть одна группа объектов «Группа 34» и другая группа «Группа 6». Я хочу, чтобы одна группа была видна, в то время как другая скрыта. Я подумал, что было бы проще сделать две кнопки вместо одной переключаемой, так как я не знал, как это сделать, поэтому, если бы кто-нибудь из вас мог помочь с этим, было бы здорово, но я столкнулся с ошибкой с опцией две кнопки. Это мой код для двух кнопок:

 Private Sub CommandButton3_Click()

ActiveSheet.Shapes("Group 34").Visible = False
ActiveSheet.Shapes("Group 6").Visible

End Sub

Private Sub CommandButton4_Click()

ActiveSheet.Shapes("Group 34").Visible
ActiveSheet.Shapes("Group 6").Visible = False

End Sub
 

Ошибка находится в третьей строке кода для каждого, где написано «Ошибка выполнения 438. Объект не поддерживает это свойство или метод»

Ответ №1:

Подобный этому:

 Sub Tester()

    Dim vis
    With ActiveSheet
        vis = .Shapes("Group 34").Visible
        .Shapes("Group 34").Visible = Not vis 'Toggle visibility
        .Shapes("Group 6").Visible = vis
    End With

End Sub