Vba: як приховати рядки на основі критеріїв


Ви можете використовувати такий синтаксис у VBA, щоб приховати рядки на основі значення клітинки:

 SubHideRows ()

    Dim i As Integer
    
    For i = 2 To 10
    
        If Cells(i, 1).Value = " Mavs " Then
            Cells(i, 1).EntireRow.Hidden = True
        Else
            Cells(i, 1).EntireRow.Hidden = False
        End If
        
    Next i

End Sub

Цей конкретний макрос приховує всі рядки в діапазоні від 2 до 10, які мають значення клітинки, що дорівнює «Mavs» у першому стовпці.

Для відображення всіх рядків можна також використати такий макрос:

 SubUnhideRows ()
    Rows.EntireRow.Hidden = False
End Sub

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Приклад: використовуйте VBA, щоб приховати рядки на основі критеріїв

Припустимо, що ми маємо наступний набір даних, що містить інформацію про різних баскетболістів:

Скажімо, ми хочемо приховати кожен рядок, який містить «Mavs» у стовпці team.

Для цього ми можемо створити такий макрос:

 SubHideRows ()

    Dim i As Integer
    
    For i = 2 To 10
    
        If Cells(i, 1).Value = " Mavs " Then
            Cells(i, 1).EntireRow.Hidden = True
        Else
            Cells(i, 1).EntireRow.Hidden = False
        End If
        
    Next i

End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зверніть увагу, що кожен рядок, який містить «Mavs» у стовпці команди, тепер приховано.

Якщо ми хочемо, ми можемо створити такий макрос для відображення всіх рядків:

 SubUnhideRows ()
    Rows.EntireRow.Hidden = False
End Sub

Коли ми запускаємо цей макрос, ми отримуємо такий результат:

Зауважте, що всі рядки відображаються знову.

Зауважте, що в нашому макросі ми вказали For i = 2 To 10 , щоб приховати рядки від 2 до 10 на основі критеріїв.

Ви можете змінити ці початкові та кінцеві значення, щоб приховати рядки в іншому діапазоні рядків.

Додаткові ресурси

У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:

VBA: як застосувати умовне форматування до клітинок
VBA: як підрахувати кількість рядків у діапазоні
VBA: як підрахувати клітинки з певним текстом

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *