Excel VBA UserForm
В Excel VBA имаме много полезен инструмент, който е известен като UserForm. Това е практичен начин за получаване на информация от потребител. Какво е UserForm във VBA? UserForm е като поле за съветници или диалогов прозорец, в който молим потребителите да въвеждат данни и той има някои инструкции по него.
VBA UserForm също е вграден в excel и може да бъде създаден от разработчиците. За да използваме първо потребителската форма на VBA, трябва да активираме раздела за програмисти от раздела Опции. След като се активира раздела за програмисти, можем да продължим в Excel VBA и да създадем UserForms. Потребителските форми се използват за съхраняване на данни в excel. Може да се сравни с google формулярите, където имаме конкретен набор от инструкции и помолете потребителя да въведе данни съгласно инструкциите.
UserForm се използва широко навсякъде. В UserForm въведените от потребителя данни се съхраняват в съответната колона. Това е най-практичният начин в excel да приемате данни от потребителя и да съхранявате данните в excel сравнително на правилното място.
Как да създадете UserForm в Excel VBA?
По-долу са различните примери за създаване на UserForm в Excel с помощта на VBA код.
Можете да изтеглите този шаблон на VBA UserForm Excel тук - VBA UserForm Excel шаблонExcel VBA UserForm - Пример №1
Първо, нека да стигнем до основните на UserForm. Как да видите UserForm и какво представлява UserForm.
- В работния лист на Excel отворете раздела на програмиста и кликнете върху редактора Visual Basic.
- Сега как да добавим потребителска форма към този празен екран? В инструмента за вмъкване щракнете върху UserForms.
- Отваря се ново поле за съветници и то е празно, което е нашата празна потребителска форма.
- В момента е кръстен като userform1, тъй като не сме му дали име. Можем да направим това, като променим името му от опцията свойства в лявата част на екрана.
- Нека променим името за примерна форма и да видим резултата.
Нашата потребителска форма е посочена като пример за сега.
- Сега нека се опитаме да променим цвета на формата на потребителя. В кутията с инструменти за свойства имаме падащо меню, предоставено ни като цвят на гърба, можем да изберем всеки набор от цветове, който желаем.
- След като избрах опцията за черен цвят, цветът на моята ми проба UserForm е променен, както следва,
- Как да стартираме тази потребителска форма? Уверете се, че сме кликнали върху самата потребителска форма и щракнете върху бутона за изпълнение, показан на екрана по-долу. Когато кликнем върху бутона за стартиране, виждаме, че празният формуляр се появява на екрана на excel.
Той няма други възможности освен да го затвори, защото не сме добавили други бутони към него.
Excel VBA UserForm - Пример №2
Нека да видим как да добавим бутони към потребителска форма за въвеждане на данните в Excel VBA. Ще направим проста потребителска форма на VBA, в която ще помолим потребителя да въведе неговото име, възраст и пол. Стъпките, свързани с изготвянето на такава потребителска форма, са следните.
- В работния лист на Excel отворете раздела на програмиста и кликнете върху визуалния основен редактор.
- Сега в раздела за вмъкване щракнете върху потребителска форма, за да отворите прозорец с потребителска форма.
- Трябва да добавим бутони към тази потребителска форма, за да получим информация от потребителя. Можем да видим, че до нашата потребителска форма, която има бутоните за управление, се отваря и кутия с инструменти.
Този набор от инструменти има различни контроли в него, които се използват в UserForms.
- Така че за нашия пример се нуждаем от име, възраст и пол, за да бъдат въведени от потребителя. По принцип се нуждаем от три етикета, които ще представляват нашите инструкции. Кликнете върху етикети .
- Задръжте курсора на мишката върху потребителската форма и щракнете и плъзнете, за да вмъкнете етикет в потребителската форма.
- В момента той е кръстен като етикет 1, трябва да променим името на етикета на „ Име “ за инструкцията към потребителя. Кликнете върху етикета и изтрийте предоставеното по подразбиране име и поставете новото име.
- Сега поставете етикета за възраст и пол по подобен начин и ги преименувайте.
- Сега в съседство с етикетите, трябва да поставим текстово поле, така че потребителят да може да въвежда стойности. От контролите на кутията с инструменти щракнете върху TextBox
- Задръжте курсора на мишката до етикетите и кликнете върху формата.
- Сега нека вмъкнем командния бутон в потребителската форма, която ще съхранява данните за нас. От контролите на кутията с инструменти щракнете върху CommandButton .
- Задръжте курсора на мишката върху формата.
- Променете надписа на CommandButton1 на „Изпращане“ .
- Поставете един CommandButton и го наречете „ Отказ “.
- Следващата стъпка е да преименувате всеки от текстовите полета, така че да можем лесно да ги използваме в нашите кодове, За име преименувайте текстовото поле срещу него като Nameva за име стойност и за възраст като Ageva по същия начин за пол като Genderva за пол стойност,
- Стартирайте UserForm, като кликнете върху бутона за възпроизвеждане или чрез натискане на клавиша F5.
- В Excel Sheet напишете заглавката на данните, която трябва да бъде въведена, както следва.
- Кликнете два пъти върху бутона за изпращане, който ще отвори прозореца с кода за бутона за изпращане, както следва.
Код:
Private Sub CommandButton1_Click () End Sub
- В прозореца с кода декларирайте променлива, стига да е показана по-долу.
Код:
Private Sub CommandButton1_Click () Dim A As Long End Sub
- Сега нека да преместим първата свободна клетка в първата колона със следния код.
Код:
Private Sub CommandButton1_Click () Dim A As Long A = Cells (Rows.Count, 1) .End (xlUp) .Row + 1 End Sub
- Нека съхраняваме стойността, предоставена от потребителя в работния лист, със следния код.
Код:
Private Sub CommandButton1_Click () Dim A As Long A = Cells (Rows.Count, 1) .End (xlUp) .Row + 1 клетки (A, 1) .Value = Nameva.Value Cells (A, 2) .Value = Ageva .Value Cells (A, 3) .Value = Genderva.Value Nameva.Value = "" Ageva.Value = "" Genderva.Value = "" Край Sub
- Сега щракнете двукратно върху бутона Отказ, това ще ви покаже и името на автоматичния макрос като това.
Код:
Private Sub CommandButton2_Click () End Sub
- Използвайте кода по-долу.
Код:
Private Sub CommandButton2_Click () UserForm1.Hide End Sub
- Стартирайте потребителската форма от предоставения бутон за стартиране или чрез натискане на клавиша F5 и получаваме следния резултат.
- Въведете стойностите в текстовите полета, както следва.
- Натиснете бутона Изпращане, за да видите резултата в отличен лист, както следва.
Така създаваме потребителска форма, за да получим данните от потребителя.
Неща, които трябва да запомните
- Потребителските форми са вградени или могат да бъдат създадени от разработчика във VBA.
- Свойствата на формата на потребителя могат да се променят от полето на съветника за свойства в VBA.
- Потребителските форми трябва да имат бутони, за да получават данни от потребителя.
- За да стартирате потребителска форма, уверете се, че е избрана.
Препоръчителни статии
Това е ръководство за VBA UserForm. Тук обсъждаме как да създадете UserForm в Excel, използвайки VBA код, заедно с някои практически примери и изтеглящ се шаблон на excel. Можете да разгледате и другите ни предложени статии -
- VBA TextBox
- Създайте шаблон на Excel
- VBA списък кутия
- Създайте електронна таблица в Excel
- VBA код в Excel
- Excel VBA Close UserForm