Как скрыть или отобразить конкретный лист на основе значения ячейки на другом листе?
Есть ли у нас какие-либо способы скрыть или отобразить конкретную вкладку рабочего листа на основе содержимого ячейки на другом листе? Например, когда я ввожу текст «Да» в ячейку G1 листа Sheet2, я хочу, чтобы Sheet1 был скрыт, а когда я ввожу «Нет», Sheet1 должен отображаться сразу. Как я мог решить эту проблему в Excel?
Скрыть или отобразить конкретную вкладку рабочего листа на основе значения ячейки с кодом VBA
Скрыть или отобразить конкретную вкладку рабочего листа на основе значения ячейки с кодом VBA
Чтобы скрыть или отобразить конкретную вкладку рабочего листа на основе значения ячейки на другом листе, следующий код VBA может оказать вам услугу, пожалуйста, сделайте следующее:
1. Перейдите на рабочий лист, содержащий значение ячейки, на основе которого вы хотите скрыть другой лист.
2. Щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код, в выскочившем Microsoft Visual Basic для приложений окна, скопируйте и вставьте следующий код в пустое окно модуля, см. снимок экрана:
Код VBA: скрыть или скрыть вкладку рабочего листа на основе значения ячейки:
Private Sub Worksheet_Change(ByVal Target As Range)
If [G1] = "Yes" Then
Sheets("Sheet1").Visible = True
Else
Sheets("Sheet1").Visible = False
End If
End Sub
Примечание: В приведенном выше коде G1 и Да — это ячейка и содержимое ячейки, на котором вы хотите основываться, и Sheet1 — это конкретный лист, который вы хотите скрыть или показать. Вы можете изменить их по своему усмотрению.
3. Затем сохраните и закройте этот код, когда вы вводите «Нет» или другой текст в ячейку G1, Sheet1 скрывается, но если вы вводите «Да» в ячейку, Sheet1 отображается сразу, см. Снимки экрана:
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (24)
Оценок пока нет. Оцените первым!
Есть 2 столбца. В первом может быть либо «скрыть» либо «отобразить». А во втором имена листов книги. Надо чтоб програмка прошлась по первому столбцу и там где «скрыть» — скрыла лист по имени которое находится в соответствующей ячейке второго столбца, а там где отобразить, соответственно отобразила лист. |
|
heso Пользователь Сообщений: 444 |
пример с начальными данными за вас выдумывать? |
Vik_tor Пользователь Сообщений: 1927 |
Вот простецкая самоделка. Не писатель макросов. |
Спасибо, но подходит если в имена листов 1,2,…n. Но имена листов могут быть разные например: Таня,Маня, … Ваня. Диапазон с листами будет фиксированный. Главное чтоб имя листа брала с ячейки которая находиться рядышком с условием. |
|
Vik_tor Пользователь Сообщений: 1927 |
#6 23.01.2017 22:01:21
а Вы пробовали? у меня работает с разными именами |
||
Alex_boy2007 Пользователь Сообщений: 5 |
#7 23.01.2017 22:05:15
Если переименовать 2 лист и цифру 2 то да, но если написать вместо 2 Таня, а этот лист будет 5, то работать не будет. |
||
Vik_tor Пользователь Сообщений: 1927 |
#8 23.01.2017 22:09:06
Вы писали по именам, а не по порядку |
||
RAN Пользователь Сообщений: 7091 |
#9 23.01.2017 22:10:03
|
||
Vik_tor Пользователь Сообщений: 1927 |
Спасибо мастеру. И мне пригодится |
Alex_boy2007 Пользователь Сообщений: 5 |
#11 23.01.2017 23:05:32 Спасибо! Все работает!!! |
Скрытие листов книги по условию |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
||||||||
Ответить |
Skip to content
Как скрыть все, кроме активного рабочего листа
На чтение 2 мин. Просмотров 2.1k.
Что делает макрос: Бывают ситуации, когда Вы не можете удалить все, кроме активного листа, как мы это делали в предыдущем макросе. Есть более мягкий вариант — просто скрыть листы. Excel не позволяет скрыть все листы в книге — по крайней мере, один должен быть виден. Тем не менее, вы можете скрыть все, кроме активного листа.
Содержание
- Как макрос работает
- Код макроса
- Как работает этот код
- Как использовать
Как макрос работает
Этот макрос с помощью цикла пробегает по всем рабочим листам и проверяет на соответствие имени каждого рабочего листа и имя активного листа. Каждый раз, когда имя не совпадает, он скрывает лист.
Код макроса
Sub SkritVseKromeAktivnogoLista() 'Шаг 1: Объявляем переменную Dim ws As Worksheet 'Шаг 2: Запускаем цикл по всем рабочим листам For Each ws In ThisWorkbook.Worksheets 'Шаг 3: Сравниваем имя каждого листа с активным If ws.Name <> ThisWorkbook.ActiveSheet.Name Then 'Шаг 4: Скрываем лист, если не совпадают ws.Visible = xlSheetHidden End If 'Шаг 5: Переходим на следующий рабочий лист Next ws End Sub
Как работает этот код
- Объявляем переменную WS, которая будет хранить имя каждого листа.
- На шаге 2 макрос начинает цикл по всем рабочим листам в этой книге.
- На этом этапе сравниваем активное имя листа с листом, который определяется с помощью цикла.
- Если имена листов различны, макрокоманда скрывает лист.
- На шаге 5, переходим к следующему листу книги и повторяем проверку снова. После того, как пробежались по всем листам, макрос завершается.
Вы заметили, что мы использовали xlSheetHidden в нашем макросе. Это свойство, которое получается, когда мы щелкает правой кнопкой мыши на листе и выбираем: Скрыть. В этом случае пользователь может щелкнуть правой кнопкой мыши на любой вкладке и выбрать: Отобразить. Он увидит все листы, которые скрыты. Но есть один вариант скрытия, который является более секретным. Если вы будете использовать xlSheetVeryHidden, чтобы скрыть свои листы, пользователи не смогут увидеть их, даже если они щелкнут правой кнопкой мыши на любой вкладке и выберут:Отобразить. Единственный способ, чтобы отобразить лист, скрытый таким способом, с помощью VBA.
Как использовать
Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:
- Активируйте редактор Visual Basic, нажав ALT + F11.
- Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
- Выберите Insert➜Module.
- Введите или вставьте код во вновь созданном модуле.
Версия от 24.10.2021
Операционная система: Windows
Microsoft Excel 2007/2010/2013/2016/2019/365
Надстройка позволяет пользователям скрывать все листы кроме активного, скрывать листы с заданными текстовыми и числовыми значениями (по маске), выборочно делать листы очень скрытыми, отображать как все листы, так и листы с именами, соответствующими заданному шаблону.
Пошаговая инструкция по установке для различных версий Excel
Видео по работе с надстройкой
Для работы с надстройкой необходимо:
1. Скачать файл, который станет доступен для скачивания сразу после оплаты (порядок оплаты);
2. Установить надстройку, следуя пошаговой инструкции по установке для различных версий Excel;
3. Нажать кнопку вызова диалогового окна на панели инструментов или на вкладке «Надстройки» (в зависимости от версии Excel);
4. В диалоговом окне надстройки задать исходные данные для работы программы и нажать кнопку «ОК».
*В случае, если в надстройку будут внесены какие-либо изменения или дополнения, то обновленную версию надстройки Вы получите бесплатно.