Како направити ВБА макро или скрипту у Екцелу
Мицрософт Екцел(Microsoft Excel) омогућава корисницима да аутоматизују функције и команде користећи макрое и Висуал Басиц(Visual Basic) за апликације(Applications) ( ВБА(VBA) ) скрипте. ВБА је програмски језик који Екцел(VBA is the programming language Excel) користи за креирање макроа. Такође ће извршити аутоматизоване команде на основу специфичних услова.
Макрои су серија унапред снимљених команди. Покрећу се аутоматски када се да одређена команда. Ако имате задатке у Мицрософт Екцел(Microsoft Excel) -у које стално обављате, као што су рачуноводство, управљање пројектима или обрачун зарада, аутоматизација ових процеса може уштедети много времена.
Под картицом Девелопер(Developer) на траци(Ribbon) у Екцел(Excel) -у , корисници могу да снимају кликове миша и притиске тастера (макрои). Међутим, неке функције захтевају детаљније скриптовање него што макрои могу да пруже. Овде ВБА(VBA) скриптовање постаје огромна предност. Омогућава корисницима да креирају сложеније скрипте.
У овом чланку ћемо објаснити следеће:
- Омогућавање скрипти и макроа
- Како направити макро у Екцелу
- Специфичан пример макроа
- Сазнајте више о ВБА
- Направите дугме(Button) да бисте започели са ВБА(VBA)
- Додајте код(Add Code) да бисте дугмету дали функционалност(Button Functionality)
- Да ли то ради?
Омогућавање скрипти и макроа(Enabling Scripts & Macros)
Пре него што можете да креирате макрое или ВБА(VBA) скрипте у Екцел(Excel) -у , морате да омогућите картицу Програмер(Developer ) у менију Траке . (Ribbon)Картица Програмер(Developer) није подразумевано омогућена. Да бисте то омогућили:
- Отворите Екцел радни лист.
- Кликните на Датотека(File ) > Опције( Options ) > Прилагоди траку.( Customize Ribbon.)
- Означите поље поред Програмер(Developer) .
- Кликните на картицу Програмер(Developer) из менија траке .(Ribbon)
- Затим кликните на Безбедност макроа(Macro Security) и означите поље поред Омогући све макрое (не препоручује се; потенцијално опасан код може да се покрене). (Enable all macros (not recommended; potentially dangerous code can run). )
- Затим кликните на ОК.( OK.)
Разлог зашто макрои нису укључени подразумевано и долазе са упозорењем је да су рачунарски код који би могао да садржи малвер.
Уверите(Make) се да је документ из поузданог извора ако радите на дељеном пројекту у Екцел(Excel) -у и другим Мицрософт(Microsoft) програмима.
Када завршите са коришћењем скрипти и макроа, онемогућите све макрое да спречите потенцијално злонамерни код да зарази друге документе.
Направите макро у Екцелу(Create a Macro in Excel)
Све радње које предузимате у Екцел(Excel) -у док снимате макро се додају у њега.
- На картици Девелопер кликните на Рецорд Мацро(Record Macro) .
- Унесите име макроа(Macro name) , тастерску пречицу(Shortcut key) и опис. (Description. )Имена макроа(Macro) морају почети словом и не могу имати размаке. Тастер за пречицу мора бити слово.
Одлучите где желите да сачувате макро из следећих опција:
- Лична радна свеска(Personal Macro Workbook) за макрое : Ово ће креирати скривени Екцел(Excel) документ са ускладиштеним макроима који ће се користити са свим Екцел(Excel) документима.
- Нова радна свеска(New Workbook) : Креираће нови Екцел(Excel) документ за складиштење креираних макроа.
- Ова радна свеска(This Workbook) : Ово ће бити примењено само на документ који тренутно уређујете.
Када завршите, кликните на ОК(OK) .
- Прођите(Run) кроз радње које желите да аутоматизујете. Када завршите, кликните на Заустави снимање(Stop Recording) .
- Када желите да приступите свом макроу, користите пречицу на тастатури коју сте му дали.
Специфичан пример макроа(Specific Example Of a Macro)
Почнимо са једноставном табелом за купце и колико дугују. Почећемо тако што ћемо креирати макро за форматирање радног листа.
Претпоставимо да сте одлучили да све табеле треба да користе другачији формат, као што је стављање имена и презимена у засебне колоне.
Ово можете ручно да промените. Или можете креирати програм користећи макро да га аутоматски форматирате исправно за вас.
Рецорд Тхе Мацро(Record The Macro)
- Кликните на Сними макро(Record Macro) . Назовимо га Формат_Цустомер_Дата(Format_Customer_Data) и кликните на ОК(OK) .
- Да бисмо добили форматирање које желимо, променићемо име прве колоне у Име(First Name) .
- Затим уметните колону поред А и назовите је Презиме(Last Name) .
- Означите(Highlight) сва имена у првој колони (која и даље укључују име и презиме) и кликните на Подаци(Data) из траке за навигацију.
- Кликните на Текст у колоне(Text to Columns) .
- Означите Раздвојено(Delimited) > Следеће(Next ) > Одвоји размаком(Separate by Space) > Следеће(Next ) > Заврши(Finish) . Погледајте снимак екрана испод и како су име и презиме раздвојени горе наведеним процесом.
- Да бисте форматирали поље Доспело стање(Balance Due) , означите износе. Кликните(Click) на Почетна(Home ) > Условно обликовање(Conditional Formatting) > Истакните ћелијска правила(Highlight Cell Rules) > Веће од(Greater Than ) > 0 .
Ово ће истаћи ћелије којима је потребна равнотежа. Додали смо неколико купаца без баланса да бисмо додатно илустровали форматирање.
- Вратите се на Девелопер(Developer ) и кликните на Заустави снимање(Stop Recording) .
Примените макро(Apply The Macro)
Почнимо са оригиналном табелом пре него што смо снимили макро да бисмо га правилно форматирали. Кликните(Click) на Макрои(Macros) , изаберите и Покрените(Run) макро који сте управо креирали.
Када покренете макро, све форматирање је урађено за вас. Овај макро који смо управо креирали се чува у Висуал Басиц Едитор(Visual Basic Editor) -у .
Корисници могу покренути макрое на неколико различитих начина. Прочитајте Покрени макро(Run a macro) да бисте сазнали више.
Сазнајте више о ВБА(Learn More About VBA)
Да бисте сазнали више о ВБА, кликните на Макро(Macro) на картици Програмер(Developer) . Пронађите онај који сте креирали и кликните на Уреди.(Edit.)
Код који видите у оквиру изнад је оно што је креирано када сте снимили свој макро.
То је такође оно што ћете покренути када желите да форматирате друге табеле плаћања купаца на исти начин.
Направите дугме да бисте започели са ВБА(Create a Button To Get Started With VBA)
Користећи исту табелу изнад са купцима и колико дугују, хајде да направимо конвертор валута.
- Да бисте уметнули елемент дугмета, идите на картицу Програмер(Developer ) .
- Изаберите АцтивеКс командно дугме(ActiveX Command Button ) из падајућег менија поред ставке Убаци(Insert) у одељку Контроле (Controls).
- Превуците(Drag) дугме било где у табели тако да можете лако да му приступите и промените га касније ако желите.
- Да бисте приложили код, кликните десним тастером миша на дугме и изаберите Својства(Properties) . Име(Name) ћемо задржати као дугме ЦоммандБуттон(CommandButton) и натпис( Convert ) за конверзију(Caption ) (ово је текст дугмета).
Додајте код да бисте дугмету омогућили функционалност(Add Code To Give The Button Functionality)
ВБА(VBA) кодирање се не одвија у Екцел(Excel) интерфејсу. Ради се у посебном окружењу.
- Идите на картицу Програмер(Developer) и уверите се да је режим дизајна(Design Mode) активан.
- Да бисте приступили коду дугмета које смо управо креирали, кликните десним тастером миша на њега и изаберите Прикажи код(View Code) .
- Гледајући код на слици испод, приметите да је почетак ( Привате Суб(Private Sub) ) и крај ( Енд Суб(End Sub) ) већ тамо.
- Код испод ће покретати процедуру конверзије валуте.
ActiveCell.Value = (ActiveCell * 1.28)
Наша сврха у овом одељку је да претворимо валуту у нашој табели. Горња скрипта одражава курс од ГБП(GBP) до УСД(USD) . Нова вредност ћелије биће оно што се тренутно налази помножено са 1,28.
Снимак екрана испод показује како изгледа код у ВБА(VBA) прозору након што га уметнете.
- Идите на Датотека(File ) у горњој навигацији и кликните на Затвори и Врати се у Мицрософт Екцел(click on Close and Return to Microsoft Excel) да бисте се вратили на главни интерфејс програма Екцел .(Excel)
Да ли то ради?(Did It Work?)
Пре него што будете могли да тестирате свој код, прво морате да онемогућите режим дизајна(Design Mode) (кликните на њега) да бисте избегли даље модификације и дали функцију дугмету.
- Унесите(Type) било који број у своју табелу, а затим кликните на дугме Претвори(Convert) . Ако се вредност вашег броја повећа за отприлике једну четвртину, успело је.
За овај пример, ставио сам број 4 у ћелију. Након што кликнете на Претвори(Convert) , број се променио у 5.12. Пошто је 4 пута 1,28 5,12, код је исправно изведен.
Сада када разумете како да направите макро или скрипту у Екцел(Excel) -у , можете да их користите за аутоматизацију мноштва радњи у Екцел(Excel) -у .
Related posts
Напредни ВБА водич за МС Екцел
5 функција скрипте Гоогле Схеетс које треба да знате
Како избрисати празне линије у Екцелу
Како користити Екцел-ову функцију говорних ћелија
Како уметнути Екцел радни лист у Ворд документ
Како користити Иф и Угнежђене Иф изјаве у Екцел-у
Повезивање Екцел-а са МиСКЛ-ом
Како да поправите #Н/А грешке у Екцел формулама као што је ВЛООКУП
Како користити Екцел-ову анализу шта ако
Како направити више повезаних падајућих листа у Екцелу
Користите тастатуру да промените висину реда и ширину колоне у Екцел-у
Разлике између Мицрософт Екцел-а на мрежи и Екцел-а за десктоп
Најбољи ВБА водич (за почетнике) који ће вам икада требати
Како брзо уметнути више редова у Екцел
Како сортирати по датуму у Екцелу
Како користити ПМТ функцију у Екцелу
Како направити тортни графикон у Екцелу
Како спојити податке у више Екцел датотека
Како уклонити дупле редове у Екцелу
5 начина за претварање текста у бројеве у Екцел-у