У овом чланку ћете научити основе ВБА корисничких форми. Објаснићу вам како да креирате образац у екцелу, како да користите ВБА тоолбок, како да рукујете уносима корисника и на крају како да складиштите уносе корисника. Проћи ћемо кроз ову тему користећи један пример и водич корак по корак. Ако ово читате, претпостављам да знате основе програма Екцел ВБА.
Без даљег одлагања, почнимо.
Направите образац за улагање у Екцел и сачувајте евиденцију
Почећемо са дизајнирањем корисничког обрасца. У овом корисничком облику имаћемо једно текстуално поље за име, једно за године, једно за износ улагања и пар радио дугмади за пол. Почнимо.
Дизајнирајте кориснички облик
- Отворите визуелни основни едитор у Екцелу помоћу пречице АЛТ+Ф11. У Пројецт Бок -у кликните десним тастером миша на ВБАПројецт(ваш фајл). Ин уметнути опцију, изаберите УсерФорм.
- Одмах ће бити креирана нова фасцикла и ваш кориснички облик ће бити пронађен. Сви кориснички облици за овај пројекат биће додани у ову фасциклу.
- Промените назив обрасца у ИнвестментФорм у кутија за имовину.
- Додајте елементе у форму: На горњој слици сам већ додао елементе (ознаке, оквир за текст, командно дугме). Међутим, нови кориснички образац је потпуно празан. Морате да користите оквир са алаткама да бисте додали елементе у образац. Ако не видите оквир са алаткама, преузмите га поглед таб.
- Елементи имена: Оквир за текст, ознаке, дугмад итд. Сви су елементи. А да бисмо их користили у ВБА коду морамо им дати имена. Користимо прозор својстава да им променимо име.
- Изаберите елемент. Овде бирам оквир за текст за име. Идите у прозор својстава и промените име у „НамеБок”. Учините исто за сваки елемент који ћете користити. (не морате да именујете ознаке, осим ако не желите да се на њих може кликнути.)
Оквир са својствима приказан је у доњем левом углу истраживача пројекта. Ако га не видите, идите на приказ и кликните на Прозор својстава. Много ћемо га користити, па се уверите да је ту. Користи се за обликовање, именовање и прилагођавање образаца.
Додајте ознаке помоћу оквира са алаткама за описна имена. Додајте оквир за текст за унос корисника.
Додајте два дугмета за избор и дајте им име Мушко и Женско.
Користио сам оквир да их инкапсулирам, али то није неопходно.
Додајте командне тастере прихвати и поништити, отказати да бисте извршили операцију на датом улазу.
Преименовао сам елемент као у доњој табели и користићу ова имена за позивање на њих. Можете имати различита имена. Само замените ова имена својим именом. Ово су ВБА називи (кодни назив) који ће се користити у коду. Они се неће одразити на обрасцу.
Текст који можете видети на налепницама и дугмадима је „Титлови“. Назив и наслов елемента могу бити исти, ако желите.
Елемент | Преименуј |
Оквир за текст назива | НамеБок |
Оквир за текст о узрасту | АгеБок |
Мушко дугме дугмета | МалеОптион |
Женско дугме дугмета | ФемалеОптион |
Оквир за улагање | ИнвестБок |
Дугме за слање команде | СубмитБуттон |
Тастер за отказивање команде | ЦанцелБуттон |
- Покажи кориснички образац кориснику: Сада је образац спреман, покажимо га кориснику. Али чекај, како да то урадим. На радном листу нема опције за позивање корисничког обрасца.
- На радном листу идите на картицу Девелоперс? Уметнути? Дугме (контрола облика). Преименујте га у отворени образац.
- Кликните десним тастером миша на њега. Кликните на додели макро, а затим на ново.
- Подмени ће бити одмах креиран. Сада додајте ову линију у под.
Заправо, кориснички образац треба окидач. То се не може показати само по себи. Можете да употребите командно дугме, потпрограм или догађај да се образац појави на екрану.
Овде ћу користити командно дугме за покретање корисничког обрасца.
Суб Опен_Форм () 'Отворени образац ИнвестментФорм.Схов Енд Суб
Учињено је. Вратите се на тај лист и кликните на дугме. Кориснички образац ће се појавити.
- Попуните лист користећи ВБА кориснички образац: Када смо кликнули на командно дугме (отворени образац), образац се појављује. Сада можете попунити образац. Али када кликнемо на дугме за слање, подаци су требали бити унети на овај лист, али ништа се не дешава.
Зато што за то нисмо написали никакво упутство вба. Морамо да сачувамо податке о корисничком обрасцу у листу.
- Вратите се на ВБА и кликните двапут на прихвати дугме. Нова подмена ће се аутоматски креирати. Ова подмена је уграђена у образац и не можете је пронаћи ни у једном модулу. Ово је исто за сваки елемент форме.
- Напишите овај вба код у ту подменију.
Привате Суб СубмитБуттон_Цлицк () Схеет1.Ацтивате 'гет први празан ред на листу (прочитајте о томе овде) лстров = Целлс (Ровс.Цоунт, 1) .Енд (клУп) .Ров Сет фирстЕмптиРов = Ранге ("А" & лстров + 1 ) 'иницирали сваку ћелију подацима фирстЕмптиРов.Оффсет (0, 0) .Валуе = намеБок.Валуе' прва ћелија фирстЕмптиРов.Оффсет (0, 1) .Валуе = АгеБок.Валуе 'прва ћелија десно фирстЕмптиРов.Оффсет (0, 3) .Валуе = ИнвестБок.Валуе 'трећа ћелија десно' проверава радио дугме Иф МалеОптион.Валуе = Труе Тхен фирстЕмптиРов.Оффсет (0, 2) .Валуе = "Мале" 'друга ћелија удесно Елсе фирстЕмптиРов.Оффсет ( 0, 2) .Валуе = "Фемале" 'друга ћелија десно Енд "Затварање обрасца Унлоад Ме Енд Суб
Горњи исечак ВБА кода покреће се када се притисне дугме за слање. Налази први празан ред на листу и попуњава га вредностима у облику. И на крају затвара образац помоћу наредбе „Унлоад Ме“.
- Затворите образац помоћу наредбе Цанцел. За сада је дугме за отказивање бескорисно. Не ради ништа. У случају да желите прекинути унос, можете користити дугме за отказивање. У том случају:
Двапут кликните на командно дугме за отказивање у ВБА едитору. Биће направљена нова подмена. Само напишите овај ред кода да бисте затворили кориснички образац.
Привате Суб ЦанцелБуттон_Цлицк () 'Затварање обрасца Унлоад Ме Енд Суб
Коначно, код обрасца ће изгледати овако.
И то је то. Овако користите Екцел вба усерформ за добијање уноса од корисника. У овом чланку смо само истражили основну употребу корисничког облика, тако да га упознате. Једноставно је, ако познајете основне вба.
У будућим чланцима истраживаћемо напредније функционалности вба корисничких облика у Екцелу. Направићемо усерформ у екцелу да бисмо учинили много више. Истражићемо различите алате и елементе доступне вба корисничкој форми. До тада ово вежбајте. Ову датотеку можете преузети за референцу ако желите.
Па да, момци, ово је био мали и једноставан водич за кориснички образац. Надам се да је било сналажљиво. Јавите ми ако имате било каквих недоумица у вези овога, јавите ми у одељку за коментаре испод.
повезани чланци
Промените вредност/садржај неколико контрола УсерФорм-а користећи ВБА у Екцелу
Спречите затварање корисничког облика када корисник кликне на дугме к помоћу ВБА у Екцелу
Вратите ћелије на које се корисник позива помоћу РефЕдит контроле корисничког облика у Екцелу
Популарни чланци:
Функција ВЛООКУП у Екцелу
ЦОУНТИФ у програму Екцел 2016
Како се користи функција СУМИФ у програму Екцел