Ви можете приховати неактивні аркуші за допомогою цього макросу. Excel не дозволяє приховати всі аркуші в книзі; принаймні один має бути відображений. Однак ви можете приховати всі, крім активного аркуша.
Як працює макрос
Макрос тут перебирає аркуші та співставляє назву кожного аркуша з ім’ям активного аркуша. Кожного разу, коли макрос зациклюється, він приховує будь-який невідповідний аркуш.
Підмакрос1()
'Крок 1: Оголошення змінних
Dim ws As Worksheet
«Крок 2: Почніть перебирати всі аркуші
Для кожного ws In ThisWorkbook.Worksheets
«Крок 3. Перевірте назву кожного аркуша
Якщо ws.Name <> ThisWorkbook.ActiveSheet.Name Then
«Крок 4: Сховайте аркуш
ws.Visible = xlSheetHidden
Кінець Якщо
«Крок 5: Перейдіть до наступного аркуша
Далі ws
Кінець суб
Крок 1 оголошує об’єкт під назвою ws. На цьому етапі створюється контейнер пам’яті для кожного робочого аркуша, через який проходить макрос.
Крок 2 розпочинає цикл, вказуючи Excel оцінити всі аркуші в цій книзі. Зверніть увагу на різницю між ThisWorkbook і ActiveWorkbook. Об’єкт ThisWorkBook посилається на книгу, яка містить код. Об’єкт ActiveWorkBook посилається на поточну активну книгу. Вони часто повертають один і той же об’єкт, але якщо книга, на якій виконується код, не є активною книгою, вони повертають різні об’єкти. У цьому випадку ви не хочете ризикувати приховати аркуші в інших книгах, тому ви використовуєте ThisWorkBook.
На кроці 3 макрос просто порівнює ім’я активного аркуша з аркушем, який зараз зациклюється.
Якщо назви аркушів відрізняються, макрос приховує аркуш на кроці 4.
На кроці 5 ви повертаєтеся назад, щоб отримати наступний аркуш. Після того, як усі аркуші оцінені, макрос завершується.
Зверніть увагу, що ви використовуєте xlsheetHidden у своєму макросі. Ця властивість застосовує стан приховування за замовчуванням, який ви зазвичай отримуєте, клацнувши правою кнопкою миші на аркуші та вибравши Сховати. У цьому стані приховування за замовчуванням користувач може клацнути правою кнопкою миші будь-яку вкладку та вибрати «Показати», щоб відобразити всі приховані аркуші. Але інший прихований стан є більш таємним, ніж стандартний. Якщо ви використовуєте xlSheetVeryHidden, щоб приховати свої аркуші, користувачі взагалі не зможуть їх побачити — навіть якщо вони клацнуть правою кнопкою миші вкладку та виберуть Показати. Єдиний спосіб показати прихований таким чином аркуш - це використовувати VBA.
Як використовувати макрос
Щоб реалізувати цей макрос, ви можете скопіювати та вставити його в стандартний модуль:
Активуйте редактор Visual Basic, натиснувши Alt+F11.
Клацніть правою кнопкою миші назву проекту/книги у вікні проекту.
Виберіть «Вставка»→ «Модуль».
Введіть або вставте код у щойно створений модуль.