Посмотреть видео - Как показать все листы в Excel
Если вы предпочитаете читать учебник, а не смотреть видео, ниже приведено подробное письменное руководство по отображению скрытых листов в Excel.
Когда вы работаете с данными, которые распределены по нескольким листам в Excel, вы можете захотеть скрыть несколько листов. Это может быть сделано для того, чтобы избежать беспорядка или не показывать некоторые данные вашему клиенту / менеджеру, скрывая некоторые рабочие листы и оставляя видимыми только полезные.
А в некоторых случаях у вас может быть книга, в которой есть несколько скрытых листов, и вы хотите показать некоторые или все эти листы.
В этом руководстве я покажу вам некоторые методы отображения рабочих листов в Excel (как вручную, так и автоматически с помощью VBA). Я также покажу вам, как выборочно отображать рабочие листы на основе имени или условия.
Итак, приступим!
Отображение листов вручную
Если у вас есть только несколько скрытых листов, вы можете вручную отобразить некоторые или все эти листы.
Предположим, у вас есть книга Excel с 10 скрытыми листами.
Ниже приведены инструкции по отображению листов вручную (по одному):
- Щелкните правой кнопкой мыши любую существующую вкладку рабочего листа.
- Нажмите на опцию Показать. Откроется диалоговое окно «Показать», в котором перечислены все скрытые листы.
- В диалоговом окне «Показать» щелкните лист, который нужно отобразить (вы можете выбрать только один за раз).
- Щелкните ОК.
Вышеупомянутые шаги покажут выбранный рабочий лист.
Примечание: К сожалению, в Excel нет встроенных функций для быстрого отображения всех скрытых листов (или способа выбрать более одного листа и отобразить его). На данный момент вам нужно использовать диалоговое окно «Показать», в котором вы можете выбрать только один рабочий лист для отображения.
Вы можете скрыть листы сразу, но не сразу.
Если вы хотите скрыть рабочие листы, вы можете выбрать сразу несколько рабочих листов (удерживая клавишу Control и щелкнув имя вкладки рабочего листа), щелкните правой кнопкой мыши и выберите опцию «Скрыть».
К сожалению, в Excel нет встроенных функций для быстрого отображения всех скрытых листов (или способа выбрать более одного листа и отобразить его). На данный момент вам нужно использовать диалоговое окно «Показать», где вы можете выбрать только один рабочий лист для отображения.
Хотя нет встроенных функций для массового отображения, вы можете легко сделать это с помощью простого кода макроса VBA.
Показать все листы за один раз
С помощью VBA вы можете легко отображать листы сразу в большом количестве.
Например, если у вас есть 10 скрытых листов, вы можете создать простой код VBA, чтобы отобразить все рабочие листы, или вы можете отобразить скрытые в зависимости от условия (например, отобразить только те, в имени которых есть определенный префикс или год).
Примечание. Методы, описанные в этом руководстве, не требуют сохранения книги Excel в формате с поддержкой макросов (.XLSM) для использования кода VBA.
Использование немедленного окна
VB Editor в Excel имеет непосредственное окно, в котором вы можете ввести строку кода и сразу же выполнить ее.
Ниже приведены шаги по использованию этой строки кода выше для отображения листов в непосредственном окне:
- Щелкните правой кнопкой мыши любой из видимых листов в книге.
- Щелкните Просмотреть код. Это откроет редактор VB.
- Выберите в меню опцию «Просмотр», а затем щелкните в окне «Немедленное». Это заставит окно Immediate появиться в редакторе VB (если его еще нет).
- В окне «Немедленное» скопируйте и вставьте следующую строку кода: Для каждого листа в Thisworkbook.Sheets: Sheet.Visible = True: Next Sheet
- Поместите курсор в конец строки
- Нажмите клавишу Enter
Вот и все!
Вышеупомянутые шаги мгновенно отобразят все листы в книге.
После этого вы можете закрыть редактор VB.
Самое приятное в этом то, что вы можете сделать это в любой книге. Вам не нужно беспокоиться о сохранении книги в формате с поддержкой макросов. Просто выполните строку кода и мгновенно отобразите все листы в книге.Позвольте мне также быстро объяснить приведенный ниже код VBA, который мы использовали в непосредственном окне для отображения листов:
Для каждого листа в Thisworkbook.Sheets: Sheet.Visible = True: Next Sheet
В приведенном выше коде используется цикл For Next VBA, чтобы просмотреть все листы в книге и установить для свойства visible значение TRUE. Как только свойство visible всех листов будет изменено, код закончится.
Двоеточие (:), используемое в приведенном выше коде, эквивалентно разрыву строки. Хотя он выглядит как одна строка кода, он состоит из трех частей, разделенных двумя двоеточиями.
Если вам интересно узнать больше об окне немедленного действия и некоторых удивительных вещах, которые вы можете с ним сделать, вот подробное руководство по нему.
Добавляя макрос в QAT (одним щелчком мыши)
В случае, если вам приходится отображать листы довольно часто, другим хорошим способом может быть использование кода макроса для отображения листов в личной книге макросов и сохранения значка на панели быстрого доступа.
Это однократный процесс, и как только вы его закончите, вы сможете отобразить листы в любой книге, просто нажав кнопку в QAT.
Это, безусловно, самый эффективный способ показать листы в Excel (наиболее полезно, когда у вас много книг со скрытыми листами, и вам нужно их показать).
Уловка здесь заключается в том, чтобы сохранить код, чтобы отображать листы в личной книге макросов.
Персональная книга макросов всегда открыта, когда вы открываете любой файл Excel (хотя вы его не видите). Когда вы сохраняете код макроса в книге личных макросов, этот код теперь всегда доступен вам. И когда вы добавляете это в QAT и запускаете код макроса одним щелчком мыши.
Ниже приведен код, который необходимо добавить в личную книгу макросов:
Sub UnhideAllSheets () для каждого листа в листах Sheet.Visible = True Next Sheet End Sub
Ниже приведены шаги по добавлению этого кода в личную книгу макросов:
- Нажмите кнопку макроса записи (она находится в левом нижнем углу приложения книги Excel).
- В диалоговом окне «Запись макроса» измените параметр «Сохранить макрос» на «Персональная книга макросов».
- Щелкните ОК. Начнется запись макроса
- Щелкните значок Остановить запись макроса (в нижнем левом углу книги). Это остановит запись макроса
- Щелкните правой кнопкой мыши вкладку любого листа и выберите «Просмотреть код».
- В редакторе VB дважды щелкните объект Module в книге Personal.XLSB.
- Удалите любой существующий код, скопируйте и вставьте приведенный выше код.
- Щелкните значок Сохранить на панели инструментов.
- Закройте редактор Vb.
Вышеупомянутые шаги позволяют сделать личную книгу макросов видимой в редакторе VB и разместить в ней код для отображения листов.
Теперь все, что вам нужно сделать, это добавить этот код на панель быстрого доступа, чтобы вы могли использовать его в любое время из любой книги.
Ниже приведены шаги по добавлению этого кода на панель быстрого доступа:
- Щелкните значок «Настроить панель быстрого доступа».
- Щелкните Дополнительные команды.
- В диалоговом окне "Параметры Excel" нажмите раскрывающийся список "Выбрать команды из".
- Щелкните Макросы. Это покажет вам список всех макросов в книге (включая макросы в PERSONAL.XLSB)
- Выберите код макроса, чтобы отобразить листы
- Нажмите на кнопку Добавить
- Щелкните ОК.
Приведенные выше шаги добавят этот код макроса для отображения листов на панели быстрого доступа.
Теперь, когда вы получаете книгу, в которой скрыты некоторые листы, вам просто нужно щелкнуть значок кода в QAT, и он мгновенно отобразит все листы за один раз.
Показать листы с определенным текстом в имени
С помощью VBA вы также можете отображать листы на основе имени.
Например, предположим, что у вас есть рабочая книга, содержащая листы с годами в имени, и вы хотите показать все те, на которых указан год 2021-2022.
Вы можете использовать приведенный ниже код, чтобы отобразить все листы с текстом 2021-2022 в нем:
Sub UnhideSheetsWithSpecificText () для каждого ws в ThisWorkbook.Worksheets Если InStr (ws.Name, "2020")> 0, то ws.Visible = xlSheetVisible End If Next ws End Sub
Вышеупомянутый цикл For Next используется для просмотра каждого листа в книге. Затем условие IF Then проверяет имя рабочего листа и, если он содержит указанный текст (в этом коде это 2021-2022 годы), оно изменит свойство visible, чтобы сделать его видимым.
А если в названии нет указанного текста, он оставит его как есть.
Вы также можете изменить этот код, чтобы скрыть листы на основе текста в имени.
Например, если вы хотите быстро скрыть все листы, в названии которых содержится текст «2020», вы можете использовать следующий код:
Sub HideSheetsWithSpecificText () для каждого ws в ThisWorkbook.Worksheets Если InStr (ws.Name, "2020")> 0, то ws.Visible = xlHidden End If Next ws End Sub
Примечание: Вы можете сохранить этот код в обычном модуле внутри редактора VB или в личной книге макросов. Если вы сохраняете его в обычном модуле и вам нужно будет снова использовать его позже, вам необходимо сохранить книгу как книгу с поддержкой макросов (формат .XLSM).
Показать выбранные листы (на основе выбора пользователя)
Вы также можете использовать VBA, чтобы дать пользователю возможность выбирать, показывать лист или нет.
Это можно сделать, отобразив окно сообщения, в котором пользователя просят выбрать, показывать лист или нет. Если выбрано, он показывает этот лист, иначе он переходит к следующему.
Ниже приведен код, который это сделает:
Sub UnhideSheetsUserSelection () для каждого sh в ThisWorkbook.Sheets Если sh.Visible True Then Result = MsgBox ("Do You Want to Unhide" & sh.Name, vbYesNo) Если Result = vbYes Then sh.Visible = True End If Next sh End Sub
Приведенный выше код просматривает каждый лист в книге и проверяет, виден ли он уже или нет. Если он скрыт, то отображается окно сообщения с именем рабочего листа.
Теперь как пользователь вы можете решить, хотите ли вы скрыть этот лист или показать его.
Это может сработать, если у вас есть скрытые рабочие листы, и вы хотите принимать вызов для каждого листа индивидуально.
Примечание: Вы можете сохранить этот код в обычном модуле внутри редактора VB или в личной книге макросов. Если вы сохраняете его в обычном модуле и вам нужно будет снова использовать его позже, вам необходимо сохранить книгу как книгу с поддержкой макросов (формат .XLSM).
Вот руководство, в котором я показываю, как сохранить код в обычном модуле Excel (найдите раздел «Где разместить этот код» в этой статье).
Показать все или выбранные листы с помощью настраиваемого просмотра
Это менее известный метод, если вы хотите быстро показать все листы (или некоторые выбранные листы).
«Пользовательское представление» - это функция в Excel, которая позволяет создавать и сохранять представления, к которым можно быстро прибегать одним нажатием кнопки.
Например, предположим, что у вас есть книга Excel с 10 листами. Вы можете создать вид, на котором будут видны все эти 10 листов. В будущем, если у вас есть скрытые листы и вы хотите вернуться к тому виду, в котором были видны все листы, вы можете сделать это, выбрав уже сохраненный пользовательский вид.
Не волнуйтесь, вы не потеряете никаких изменений, внесенных после создания пользовательского представления. Все настраиваемые представления возвращают вас в представление Excel, когда вы его создали. Поэтому, если некоторые листы были видны при создании представления и теперь скрыты, выбор этого настраиваемого представления отобразит эти листы.
Предполагаемое использование настраиваемого представления - позволить пользователям создавать различные представления. Например, если вы аналитик, вы можете создавать разные представления для разных отделов своей организации. Таким образом, вы можете иметь определенный набор листов (или ячеек / строк / столбцов), видимых для одного отдела, а другой набор для другого отдела. Когда у вас есть эти представления, вместо того, чтобы изменять его вручную, вы просто активируете представление для отдела, и оно покажет вам рабочие листы (или строки / столбцы), относящиеся только к ним.
Ниже приведены шаги по созданию настраиваемого представления в Excel:
- Для начала покажите все рабочие листы
- Перейдите на вкладку "Просмотр".
- Нажмите на Custom Views
- В диалоговом окне "Пользовательские представления" нажмите "Добавить". Откроется диалоговое окно «Добавить представление».
- Введите любое имя для этого вида, в котором будут видны все листы (или выбранные листы).
- Щелкните ОК.
После создания представления вы можете в любой момент попросить Excel активировать это представление (что сделает видимыми все те листы, которые были видны при создании представления).
Ниже приведены шаги для отображения / активации пользовательского представления:
- Перейдите на вкладку "Просмотр".
- Нажмите на Custom Views
- В диалоговом окне Custom Views выберите представление, которое вы хотите показать.
- Нажмите кнопку Показать
Это мгновенно отобразит листы и покажет те, которые были видны, когда вы создали это настраиваемое представление.
Отображение "очень скрытых" листов
Иногда, несмотря на то, что в вашей книге есть несколько скрытых листов, вы не можете показать их вручную.
Это может быть связано с тем, что эти листы не просто скрыты - они «очень скрыты».
Когда у вас есть скрытые листы в книге и вы щелкаете правой кнопкой мыши имя любой вкладки, вы увидите опцию «Показать» листы. Но если у вас есть листы, которые «очень скрыты» или если нет скрытых листов, вы не сможете использовать эту опцию (она будет выделена серым цветом).
Вы все еще можете показать эти «очень скрытые» листы, используя код VBA, который мы рассмотрели выше.
Просто скопируйте и вставьте приведенный ниже код в непосредственное окно и нажмите Enter, и он мгновенно отобразит все листы (как скрытые, так и очень скрытые).
Для каждого листа в Thisworkbook.Sheets: Sheet.Visible = True: Next Sheet
У меня также есть полное руководство о том, как скрыть листы и сделать их очень скрытыми (на случай, если вам интересно учиться)