Скрыть Checbox со строками при использовании VBA - PullRequest
0 голосов
/ 01 апреля 2020

В моем файле Excel я скрываю некоторые строки с кодом VBA на основе значения ячейки.

Когда Number of Properties = 6, все строки 72-82 видны

изображение 1 строки 72-82

image 1 rows 72-82

Когда Number of Properties = 4, видны только строки 72-78

изображение 2 строки 72-78

image 2 rows 72-78

Я использую следующий код VBA:

ActiveSheet.Activate
If Target.Cells.Count <> 1 Then Exit Sub

If Not Application.Intersect(Range("U68"), Range(Target.Address)) Is Nothing Then

        Select Case Target.Value
        Case Is = "1": Rows("74:83").EntireRow.Hidden = True
                    
                        
        Case Is = "2": Rows("75:83").EntireRow.Hidden = True
                        Rows("72:75").EntireRow.Hidden = False
                        
        Case Is = "3": Rows("77:82").EntireRow.Hidden = True
                        Rows("72:77").EntireRow.Hidden = False
                        
        Case Is = "4": Rows("79:82").EntireRow.Hidden = True
                        Rows("72:79").EntireRow.Hidden = False
                        
       Case Is = "5": Rows("81:82").EntireRow.Hidden = True
                        Rows("72:81").EntireRow.Hidden = False
                        
       Case Is = "6":
                        Rows("72:83").EntireRow.Hidden = False
        End Select

End If

В этих строках я также добавил несколько флажков. Как видите, флажки не прячутся, когда прячутся строки. Вместо этого они перекрываются.

Можно ли как-нибудь обновить код VBA, чтобы скрыть также флажки?

Я пытался использовать «Перемещение и размер с ячейками» на панели свойств, но это не работает , Мои клетки все еще перекрываются.

1 Ответ

0 голосов
/ 01 апреля 2020

В зависимости от того, как вы назвали свои флажки, попробуйте следующее:

    Select Case Target.Value
    Case Is = "1": 
        Rows("74:83").EntireRow.Hidden = True
        CheckBoxes("CheckBox1").Visible = False

И так далее ...

Замените "CheckBox1" на имя флажка, который вы хотите чтобы скрыть

. Используется свойство .Visible, как описано в документах MSDN

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...