Excel VBA Close UserForm

Раніше ми обговорювали, як створити UserForm у VBA. Тепер для отримання даних від користувача з'явилася кнопка для подання, яка зберігає потім значення, задане користувачем на аркуші excel. Але що після надання значенням форми все одно є. Або що робити, якщо користувач не хоче давати будь-які дані та закрити форму користувача. Ми не обговорювали, як закрити форму користувача для користувача. Аналогічно кнопці для надсилання для подання даних, у нас була ще одна кнопка, яка була для скасування, яка використовується для приховування форми користувача. Кнопка скасування також має власний код для приховування форми користувача від користувача. Зараз є два способи, за допомогою яких ми можемо приховати форму користувача. Вони такі:

  1. Перший метод, коли ми використовуємо метод Unload Me. Цей метод вивантажує UserForm і він зникає з дисплея.
  2. Інший метод, коли ми використовуємо метод Useform.Hide. Цей метод приховує UserForm від дисплея.

Рекомендується використовувати другий метод для закриття UserForm, оскільки перший метод повністю вивантажить UserForm, і будь-які дані, введені користувачем, будуть повністю втрачені. Але коли ми використовуємо другий метод приховування UserForm, то остання запис, зроблена користувачем у формі користувача, все ще присутня.

Як закрити форму користувача в Excel VBA?

Ми дізнаємось про те, як закрити UserForm у Excel VBA з її різницею та на кількох прикладах, але спочатку дізнаємось спосіб закриття форми користувача у VBA.

Є два способи закрити форму користувача у VBA:

  1. Вивантажте мене
  2. Сховати
Ви можете завантажити цей шаблон VBA Close UserForm Excel тут - VBA Close UserForm Excel Шаблон

Excel VBA Close UserForm - Приклад №1

Спочатку спробуємо метод закрити UserForm за допомогою параметра Unload Me. У нашій попередній статті ми мали форму користувача, яка виглядає як наведена нижче.

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

Код:

 Приватний Sub CommandButton2_Click () Кінець Sub 

Кнопка "Скасувати" була другою командною кнопкою, яку ми надали для користувача. Тепер напишіть заяву коду як Вивантажити мене в розділі, як показано на зображенні нижче.

Код:

 Приватний Sub CommandButton2_Click () Вивантажити мене Кінець Sub 

Ми можемо бачити, що Я - оператор Object of Unload. Тепер запустимо форму користувача, натиснувши клавішу F5 для її відображення.

Натисніть кнопку Скасувати, щоб побачити, що форма користувача зникає, і вона повертає нас до початкової форми користувача у вікні проекту.

Excel VBA Close UserForm - Приклад №2

Тепер спробуємо другий метод, який метод userform.hide подібним чином, як вище, спочатку відкриємо форму користувача з форми користувача у вікні проекту.

Тепер двічі клацніть на кнопку скасувати, яка відкриє код перегляду для кнопки команди Скасувати.

У нас вже є команда Unload Me в командній команді Скасувати, очистити код і замінити його на Userform.Hide .

Код:

 Приватний Sub CommandButton2_Click () UserForm1.Hide End Sub 

Тепер знову запустимо форму користувача, натиснувши клавішу F5 і відобразимо її на екрані.

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

Excel VBA Close UserForm - Приклад №3

Тепер перейдемо до першого методу Unload Me на заяву кнопки "Скасувати" та надамо деякі дані для форми користувача. Двічі клацніть на кнопці скасувати з форми користувача, щоб відкрити код перегляду командної кнопки та замінити код на оператор Unload Me наступним чином.

Код:

 Приватний Sub CommandButton2_Click () Вивантажити мене Кінець Sub 

Тепер знову запустіть форму користувача, натиснувши клавішу F5 і зробіть її відображенням на екрані.

Дайте нам інформацію про інформацію користувача таким чином, тепер не натискайте кнопку подання, натисніть кнопку Скасувати.

Знову запустіть форму користувача, натиснувши клавішу F5.

Тепер ми можемо побачити, що ми втратили дані, які ми надали до форми користувача, оскільки не подали їх, вони не зберігалися на робочому аркуші, і ми закрили форму користувача за допомогою заяви Unload Me, яка видалила вже заповнені дані.

Excel VBA Close UserForm - Приклад №4

Тепер давайте зробимо ту саму вправу, але за допомогою оператора Userform.Hide,

У кнопці "Скасувати" замініть код на неї за допомогою методу userform.hide, як показано нижче.

Код:

 Приватний Sub CommandButton2_Click () UserForm1.Hide End Sub 

Тепер ми знову запустимо форму користувача, натиснувши клавішу F5 і надамо їй деякі дані наступним чином.

Тепер натискаємо кнопку скасувати і знову запускаємо форму користувача, яка дасть нам наступний результат.

Дані навіть не втрачаються, коли ми натискаємо кнопку скасувати, якщо ми натискаємо представити, вона зберігатиме дані в excel наступним чином.

Тепер дані зберігаються, форма користувача порожня, і ми можемо закрити форму користувача за допомогою кнопки скасувати,

Що потрібно пам’ятати

  • Після того, як користувач ввів дані, нам потрібно закрити форму користувача, щоб це було так само важливо, як кнопка надсилання.
  • Закрити Форма користувача знаходиться в командній кнопці форми користувача у VBA, загалом вона називається Скасувати або Закрити.
  • Існує два окремих способи закриття форми користувача, але вони зрештою служать тій самій цілі, що й один для одного.
  • Найбільш рекомендується метод Userform.Hide, навіть якщо формату користувача закрита користувачем до введення даних, дані не втрачаються і запис, зроблений користувачем, знову відображається, коли користувач відкриває форму користувача.

Рекомендовані статті

Це посібник до VBA Close UserForm. Тут ми обговорюємо, як закрити UserForm в Excel за допомогою оператора Unload Me та Userform.Hide методу в VBA разом з деякими практичними прикладами та шаблоном Excel, який можна завантажити. Ви також можете ознайомитися з іншими запропонованими нами статтями -

  1. Як активувати лист у VBA?
  2. Оцініть формулу в Excel
  3. Повне керівництво до списку VBA
  4. HYPERLINK Формула в Excel

Категорія: