VBA Zavřít UserForm | Nejlepší 2 metody uzavření Userform s příklady

Když vytvoříme userform, vezme data jako vstup od uživatelů, ale data poskytnutá formuláři se neuzavřou, takže může uživatele zavést, aby znovu zadal data, k uzavření userformu, když má vstup, použijeme dva různé příkazy dostali a jsou metodou Unload me k uzavření formuláře uživatele nebo můžeme použít metodu userform.hide.

Excel VBA Zavřít Userform

Userforms jsou životně důležité při získávání vstupů od uživatele v rámci projektu VBA. Obvykle navrhneme formulář uživatele, než jej představíme před uživatelem. Jakmile je návrh formuláře uživatele VBA dokončen, musíme se před uživatelem ukázat stejně a vyžadovat kódování VBA. Podobně k uzavření uživatelské formy vyžaduje znalost kódování VBA.

V tomto článku vám ukážeme, jak zavřít formulář uživatele v kódování VBA.

Jak zavřít UserForm v aplikaci Excel VBA?

Jakmile je účel formuláře uživatele hotový, má smysl neustále zobrazovat formulář uživatele před uživatelem, takže musíme formulář uživatele zavřít. Uživatelskou formu můžeme zavřít pomocí příkazů „Unload Me“ a „UserForm.Hide“. I když se oba navzájem mírně liší, nakonec poslouží našemu účelu.

Tuto šablonu VBA Close UserForm Excel si můžete stáhnout zde - VBA Close UserForm Excel šablonu

# 1 - Zavřete Userform pomocí příkazu „Unload Me“ ve VBA

Podívejte se například na níže uvedený obrázek formuláře uživatele.

Uživatelský formulář jsem pojmenoval „MyUserForm“.

Pokud spustím userform, uvidíme userform jako níže.

Potřebuji vyplnit požadované podrobnosti, jakmile vyplněné informace kliknu na tlačítko Odeslat, zachytí stejná data do listu, který je viditelný na levé straně.

Po kliknutí na tlačítko Odeslat zachytilo údaje, které jsem zadal do formuláře uživatele.

Pokud si všimnete, máme ještě jedno tlačítko s názvem „Zrušit“. Co to dělá?

Než zobrazíme formulář uživatele, musíme toto tlačítko nakonfigurovat. Nyní se vrátím zpět do editoru jazyka Visual Basic a nakonfiguruji toto tlačítko.

Nyní dvakrát kliknu na tlačítko Storno a otevře se automatický podproces VBA jako níže.

V tomto postupu musíme napsat kód VBA o tom, co by se mělo stát, když klikneme na tlačítko Storno. Když klikneme na toto tlačítko pro zrušení, mělo by se zavřít formulář uživatele, na kterém v tuto chvíli pracujeme.

Takže kód napište jako „Unload Me“.

Kód:

 Private Sub CancelButton_Click () Unload Me End Sub 

„Unload Me“ je slovo, které používáme k uzavření uživatelské formy, na které pracujeme. Zde uživatelský formulář rozpoznává slovo „Já“ jako samotný UserForm.

„Unload Me“ lze použít pouze u této procedury formuláře uživatele, nemůžeme toto prohlášení volat v jiných modulech. Pokud je vyvolána, zobrazí se chybová zpráva jako „ Neplatné použití klíčového slova Me “.

Ok, pojďme spustit kód pomocí klávesy F5 nebo ručně, uvidíme prázdný formulář uživatele.

Vyplňte údaje a klikněte na Odeslat.

Jakmile kliknete na tlačítko Odeslat, uloží se hodnoty do uvedených buněk.

Pokud je zadávání dat hotové, musíme uživatelský formulář zavřít, že?

Kliknutím na tlačítko Storno zavřete formulář uživatele, tím se zavře formulář uživatele.

# 2 - Zavřete UserForm pomocí metody Skrýt v aplikaci Excel VBA

Můžeme také zavřít Userform pomocí metody „Skrýt“ také ve VBA. Nyní znovu dvakrát kliknu na tlačítko pro zrušení, abych viděl soukromý podproces.

Vzhledem k tomu, že jsme již kód napsali, abychom uzavřeli formulář uživatele, můžeme vidět stávající kód ve VBA. Nyní to odstraním.

Chcete-li použít metodu Skrýt, musíme zavolat uživatelský formulář podle názvu. V tomto případě je název našeho uživatelského formuláře „MyUserForm“.

Po uvedení uživatelského formuláře jeho jménem, ​​pokud vložíme tečku (.), Můžeme vidět všechny vlastnosti a metody tohoto uživatelského formuláře. Nyní vyberu metodu „Skrýt“.

Dobře, pojďme spustit userform ještě jednou. Uvidíme prázdný uživatelský formulář, nejprve vyplňte podrobnosti.

Nyní bez kliknutí na tlačítko Odeslat kliknu na tlačítko Zrušit, skryje se formulář uživatele.

Rozdíl mezi uvolněním a skrytím v aplikaci Excel VBA

Musíte mít otázku, jaký je rozdíl mezi Unload & Hide, kde oba slouží podobnému účelu. Mezi těmito dvěma je rozdíl. Nyní nejprve použiji příkaz Unload Me. Podívejte se na obrázek níže.

Údaje jsem zadal do uživatelského formuláře, ale ještě jsem je neodeslal. Pokud kliknu na Zrušit, načte se uživatelský formulář.

Nyní znovu spustím kód pomocí klávesové zkratky aplikace Excel F5 nebo ručně, zobrazí prázdný formulář uživatele.

I když jsem omylem zadal data správně, klikl jsem na tlačítko Storno, když se znovu objeví nový uživatelský formulář, vyplnil jsem data od nuly.

Nyní použiji metodu „Skrýt“.

Ne, kliknu na tlačítko Zrušit, skryje se viditelný formulář uživatele. Ale když znovu spustím makro, vrátí se s daty, která jsem již zadal v uživatelském formuláři.

Takto můžeme použít příkaz „Uvolnit“ a „Skrýt“ k uzavření uživatelských formulářů v aplikaci Excel VBA.


$config[zx-auto] not found$config[zx-overlay] not found