Перейти к основному содержанию

Как скрыть столбцы в режиме реального времени на основе пользовательского ввода в Excel?

Для большинства из нас может быть обычной задачей скрыть столбцы в Excel, но пытались ли вы когда-нибудь автоматически скрывать столбцы на основе определенных входных значений? Например, когда я ввожу в ячейку текст «AA», столбец A скрывается; когда я ввожу «BB», столбцы B и C скрываются; при вводе «CC» столбец D и E скрывается; при вводе «DD» столбец F скрывается, как показано ниже. В этой статье будет создан код VBA для ее решения в Excel.

Скрытие или отображение столбцов в режиме реального времени на основе пользовательского ввода с помощью кода VBA

Скрыть или показать столбцы для фильтрации данных на основе пользовательского ввода с помощью кода VBA.


Скрытие или отображение столбцов в режиме реального времени на основе пользовательского ввода с помощью кода VBA

Чтобы скрыть определенные столбцы в режиме реального времени на основе входных значений, примените следующий код VBA:

1. На листе, где вы хотите скрыть столбцы, щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код из контекстного меню, см. скриншот

2. В открытом Microsoft Visual Basic для приложений окно, скопируйте и вставьте следующий код VBA в Лист (Код) окно.

Код VBA: скрытие столбцов в режиме реального времени на основе пользовательского ввода

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
Внимание: В приведенном выше коде K1 это ячейка, в которую вы вводите определенный текст, и вы должны изменить тексты и имена столбцов в соответствии с вашими потребностями. Кроме того, вы можете добавить другие новые критерии, просто добавив следующие скрипты:
  • Случай "AA": Columns("A").EntireColumn.Hidden = False
  • Столбцы("A").EntireColumn.Hidden = True

3. Затем закройте окно кода. Теперь при вводе «АА» в ячейку К1 и нажмите Enter ключ, столбец A скрыт; при вводе «BB» и нажмите Enter ключ, столбцы B и C скрыты и так далее. Если вы введете любое другое значение или удалите содержимое, сразу отобразятся скрытые столбцы, см. демонстрацию ниже:


Скрыть или показать столбцы для фильтрации данных на основе пользовательского ввода с помощью кода VBA.

В этом примере я перейду к фильтрации диапазона данных на основе введенного названия продукта. Когда я вхожу в «Толстовка», отображается только информация о толстовке, а остальные столбцы сразу скрываются; и когда я ввожу «Все», все столбцы будут отображаться, как показано ниже:

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

2. В открытом Microsoft Visual Basic для приложений окно, скопируйте и вставьте следующий код VBA в Лист (Код) окно.

Код VBA: скрытие или отображение столбцов для фильтрации данных на основе пользовательского ввода.

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
Внимание: В приведенном выше коде K1 это ячейка, в которую вы вводите конкретный текст, B1: H1 заголовки строк содержат название продукта, который вы хотите отфильтровать.

3. Затем закройте окно кода. Теперь, если вы введете название товара в ячейку К1, будут отображаться только соответствующие столбцы, остальные будут скрыты; и если вы введете текст «Все», все столбцы будут отображаться, как показано ниже:

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations