Показать ряд клеток с помощью кнопки - PullRequest
0 голосов
/ 28 января 2019

Я хочу показать пару строк ячеек (9:18) на определенном листе в рабочей книге с помощью кнопки.

Единственное, что мне удалось найти в Интернете, - это каксоздать кнопку переключения, которая скрывает и отображает ячейки, но я просто хочу, чтобы кнопка могла их отображать.

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Ниже приведен базовый макрос, который будет скрывать / показывать эти строки в активном листе.После помещения этого в кодовый модуль VBE назначьте этот макрос кнопке.Если вы не знаете, как это сделать, поищите на YouTube (или там, где вам удобно) " как назначить макрос кнопке Excel ."

Sub HideUnhideSomeRows()

    Dim FirstRowToHide As Long: FirstRowToHide = 9  'update these to change the start row
    Dim LastRowToHide As Long: LastRowToHide = 18   'update these to change the end row

    'using the WITH statement reduces the amount of code needed
    With Range(Rows(FirstRowToHide), Rows(LastRowToHide))

        'this if statement only checks the FirstRowToHide but that should work if they all should be grouped.
        If .Hidden = False Then
            .Hidden = True
        Else
           .Hidden = False
        End If

    End With

End Sub

Надеждаэто работает.Возможно, оставьте немного кода или скриншоты на ваш следующий вопрос.

0 голосов
/ 28 января 2019

Прежде всего вам нужно написать короткий небольшой VB-код, который скрывает эти строки.Приведенный ниже пример может помочь вам начать работу, но он предназначен для переключения состояния скрытых ячеек (т. Е. Если они в данный момент скрыты, то они станут видимыми)

Sub HideRows(Row_Range As Variant, Sheet As Variant)
Dim ws As Worksheet

Set ws = Sheets(Sheet)
    'If you do not want a toggle effect, then simply remove this if statement
    If ws.Rows(Row_Range).EntireRow.Hidden = True Then
        Rows(Row_Range).EntireRow.Hidden = False
    Else
        ws.Rows(Row_Range).EntireRow.Hidden = True
    End If

End Sub

После добавления вышеуказанногок модулю VBA в Excel, затем вы можете просто вызвать его с помощью приведенного ниже.

Sub Test()

    Call HideRows("12:18", "Sheet1")

End Sub

После настройки макроса «Вызов» вам нужно будет назначить этот макрос для вашей кнопки.

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