Додавання аркуша в Excel VBA, якщо його не існує (з покроковими інструкціями)

  • Поділитися Цим
Hugh West

Excel VBA - це потужний і зручний інструмент для досить швидкого виконання завдань у великій кількості. Ви можете застосувати кілька умов і отримати різні результати на основі окремих умов за допомогою VBA. Іноді вам може знадобитися перевірити, чи існує певний аркуш у вашій книзі. І якщо ні, можливо, вам доведеться створити цей аркуш. У цій статті я покажу вам усі кроки, щоб додати аркуш якщо його немає, за допомогою Excel VBA.

Excel VBA: додавання аркуша, якщо його не існує (короткий огляд)

 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Який аркуш ви шукаєте?", _ "Додати аркуш, якщо він не існує", "Sheet5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Аркуш "'" & addSheetName & _ "'' маєбуло додано, оскільки він не існував.", _ vbInformation, "Додати аркуш, якщо він не існує.", _ vbInformation, "Додати аркуш, якщо він не існує" Else MsgBox "Аркуш ''" & addSheetName & _ "''аркуш вже існує в цій книзі.", _ vbInformation, "Додати аркуш, якщо він не існує" End If End Sub 

Вставити в новий модуль для застосування наведеного вище коду.

Завантажити Практичний посібник

Ви можете завантажити наш робочий зошит з практики тут безкоштовно!

Додати аркуш, якщо він не існує.xlsm

Кроки застосування коду VBA для додавання аркуша в Excel, якщо він не існує

Припустимо, у вас є робоча книга, що містить 4 аркуші з назвами січень, лютий, березень і квітень. Кожен аркуш містить звіт про продажі за наступний місяць. Тепер вам потрібно знайти деякі аркуші в робочій книзі і додати аркуш, якщо він відсутній. Для цього ви можете слідувати наведеним нижче покроковим інструкціям, щоб зробити це.

Крок 1: Вставте новий модуль

Спочатку потрібно вставити модуль для написання коду на VBA.

  • Для цього, на самому початку, перейдіть за посиланням Розробник вкладка>>; Visual Basic інструмент.

  • Як наслідок, на сьогоднішній день в Україні діє Microsoft Visual Basic для додатків з'явиться вікно.
  • Згодом перейдіть на сторінку Вставка вкладка>>; Модуль інструмент.

Таким чином, новий модуль під назвою Модуль 1 було створено.

Читати далі: Як додати аркуш з назвою в Excel VBA (6 простих способів)

Схожі читання

  • Створення нової книги та збереження за допомогою VBA в Excel
  • Excel VBA: створюємо нову книгу та даємо їй ім'я (6 прикладів)
  • Як створити новий аркуш з шаблону за допомогою макросу в Excel

Крок 2: Напишіть і збережіть необхідний код VBA

Тепер потрібно написати код всередині модуля і зберегти його.

  • Для цього необхідно натиснути на кнопку Модуль 1 і у вікні коду введіть наступний код.
 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Який аркуш ви шукаєте?", _ "Додати аркуш, якщо він не існує", "Sheet5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Аркуш "'" & addSheetName & _ "'' маєбуло додано, оскільки він не існував.", _ vbInformation, "Додати аркуш, якщо він не існує.", _ vbInformation, "Додати аркуш, якщо він не існує" Else MsgBox "Аркуш ''" & addSheetName & _ "''аркуш вже існує в цій книзі.", _ vbInformation, "Додати аркуш, якщо він не існує" End If End  Sub 

  • В результаті вікно коду матиме наступний вигляд.

🔎 Пояснення коду:

Сегмент 1:

 Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String 

У цій частині ми оголосили ім'я макросу та імена змінних.

Сегмент 2:

 addSheetName = Application.InputBox("Який аркуш ви шукаєте?", _ "Додати аркуш, якщо не існує", "Sheet5", , , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name 

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

Сегмент 3:

 If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "Аркуш ''" & addSheetName & _ "''" було додано, оскільки він не існує.", _ vbInformation, "Додати аркуш, якщо не існує" 

У цій частині ми перевіряємо, чи існує потрібний аркуш у робочій книзі. Якщо ні, то створюється потрібний аркуш і з'являється повідомлення про цю зміну.

Сегмент 4:

 Else MsgBox "Аркуш ''" & addSheetName & _ "''аркуш вже існує в цій книзі.", _ vbInformation, "Додати аркуш, якщо не існує" End If End Sub 

У цій частині ми працювали з результатом, якщо потрібний аркуш вже існує в книзі. У цьому випадку з'явиться ще одне вікно з повідомленням про те, що цей аркуш існує. Крім того, в цій частині ми завершуємо код належним чином.

  • Після цього натисніть Ctrl + S.

  • Згодом було підписано угоду про Microsoft Excel З'явиться вікно, в якому потрібно натиснути на кнопку Ні кнопку.

  • Як наслідок, на сьогоднішній день в Україні діє Зберегти як з'явиться вікно.
  • Далі оберіть пункт Зберегти як тип: опція як .xlsm Після цього натисніть на кнопку Зберегти кнопку.

Таким чином, ви написали та зберегли необхідний вам код.

Зауважте:

Ви повинні зберегти книгу Excel у форматі .xlsm В іншому випадку макрос не буде включений і код не буде працювати.

Читати далі: Excel VBA для додавання аркуша з іменем змінної (5 ідеальних прикладів)

Крок 3: Запустіть код

Тепер потрібно запустити код і перевірити результати.

  • Для цього, в першу чергу, необхідно натиснути на кнопку Біжи в розділі "Іконка" на сторінці Microsoft Visual Basic для додатків вікно.

  • Як наслідок, на сьогоднішній день в Україні діє Макроси з'явиться вікно.
  • Після цього оберіть пункт AddSheetIfNotExist і натисніть на макрос Біжи кнопку.

  • В цей час створене нами вікно повідомлень з ім'ям Додати аркуш, якщо не існує з'явиться. Тут автоматична опція буде такою Лист5 .

  • Тепер, для перевірки, напишіть "Квітень" у текстовому полі та натисніть на кнопку Гаразд. кнопку.

  • Згодом Ви побачите, що з'явиться ще одне вікно з повідомленням про те, що аркуш вже існує.
  • Натисніть на кнопку Гаразд. кнопку.

  • Після цього знову запускаємо код і пишемо "Травень" у текстовому полі створеного вікна повідомлення. Після цього натисніть на кнопку ГАРАЗД. кнопку.

  • В результаті ви побачите ще одне вікно, в якому з'явиться повідомлення про те, що "Травень" не існувало, і тому він створив цей аркуш.
  • Далі натисніть на кнопку ГАРАЗД. кнопку.

Нарешті, ви бачите, що ви додали аркуш, якого раніше не було. І тепер робоча книга буде виглядати так.

Читати далі: Excel VBA: додавання останнього аркуша (3 ідеальних приклади)

Висновок

Отже, у цій статті я показав вам усі кроки для додавання аркуша, якщо він не існує, за допомогою Excel VBA. Уважно прочитайте всю статтю, щоб краще зрозуміти її та досягти бажаного результату. Сподіваюся, ви знайдете цю статтю корисною та інформативною. Якщо у вас виникнуть додаткові запитання чи рекомендації, будь ласка, не соромтеся звертатися до мене.

А також, завітайте до ExcelWIKI і ще багато таких статей. Дякуємо!

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.