Како аутоматизовати рутинске задатке у Екцелу помоћу макроа

Екцел има моћну, али у исто време веома ретко коришћену могућност да креира аутоматске секвенце акција помоћу макроа. Макро је идеалан излаз ако се бавите истом врстом задатка који се понавља много пута. На пример, обрада података или форматирање документа према стандардизованом шаблону. У овом случају вам није потребно познавање програмских језика.

Да ли вас већ занима шта је макро и како функционише? Онда храбро наставите - онда ћемо корак по корак са вама урадити цео процес креирања макроа.

Шта је макро?

Макро у Мицрософт Оффице-у (да, ова функционалност функционише исто у многим апликацијама Мицрософт Оффице пакета) је програмски код у програмском језику Висуал Басиц за апликације (ВБА) ускладиштена унутар документа. Да би било јасније, Мицрософт Оффице документ се може упоредити са ХТМЛ страницом, тада је макро аналог Јавасцрипт-а. Оно што Јавасцрипт може да уради са ХТМЛ подацима на веб страници је веома слично ономе што макро може да уради са подацима у Мицрософт Оффице документу.

Макрои могу да ураде скоро све што желите у документу. Ево неких од њих (веома мали део):

  • Примените стилове и форматирање.
  • Извршите различите операције са нумеричким и текстуалним подацима.
  • Користите спољне изворе података (датотеке базе података, текстуални документи, итд.)
  • Направите нови документ.
  • Урадите све горе наведено у било којој комбинацији.

Креирање макроа – практичан пример

На пример, узмимо најчешћи фајл ЦСВ. Ово је једноставна табела 10×20 испуњена бројевима од 0 до 100 са насловима за колоне и редове. Наш задатак је да овај скуп података претворимо у табелу са презентованим форматом и генеришемо укупне вредности у сваком реду.

Као што је већ поменуто, макро је код написан у ВБА програмском језику. Али у Екцелу можете креирати програм без писања линије кода, што ћемо сада урадити.

Да бисте креирали макро, отворите Поглед (Тип) > Макрои (Макро) > Рецорд Мацро (Макро снимак...)

Дајте свом макроу име (без размака) и кликните OK.

Почевши од овог тренутка, СВЕ ваше радње са документом се снимају: промене ћелија, скроловање кроз табелу, чак и промена величине прозора.

Екцел сигнализира да је режим снимања макроа омогућен на два места. Прво, на менију Макрои (Макрои) – уместо стринга Рецорд Мацро (Снимање макроа...) појавила се линија Заустави снимање (Заустави снимање).

Друго, у доњем левом углу прозора програма Екцел. Икона Стоп (мали квадрат) означава да је режим снимања макроа омогућен. Кликом на њега зауставља се снимање. Насупрот томе, када режим снимања није омогућен, на овој локацији постоји икона која омогућава снимање макроа. Кликом на њега добићете исти резултат као и укључивање снимања кроз мени.

Сада када је режим снимања макроа омогућен, пређимо на наш задатак. Пре свега, додајмо заглавља за збирне податке.

Next, enter the formulas in the cells in accordance with the names of the headings (variants of the formulas for the English and versions of Excel are given, cell addresses are always Latin letters and numbers):

  • =СУМ(Б2:К2) or =СУМ(Б2:К2)
  • =ПРОСЕК(Б2:К2) or =СРЗНАЧ(Б2:К2)
  • =МИН(Б2:К2) or =МИН(Б2:К2)
  • =МАКС(Б2:К2) or =МАКС(Б2:К2)
  • =МЕДИАН(Б2:К2) or =МЕДИАН(Б2:К2)

Сада изаберите ћелије са формулама и копирајте их у све редове наше табеле превлачењем ручице за аутоматско попуњавање.

Након што завршите овај корак, сваки ред треба да има одговарајуће укупне вредности.

Затим ћемо сумирати резултате за целу табелу, за то ћемо урадити још неколико математичких операција:

Редом:

  • =СУМ(Л2:Л21) or =СУМ(Л2:Л21)
  • =ПРОСЕК(Б2:К21) or =СРЗНАЧ(Б2:К21) – за израчунавање ове вредности потребно је узети тачно почетне податке табеле. Ако узмете просек просека за појединачне редове, резултат ће бити другачији.
  • =МИН(Н2:Н21) or =МИН(Н2:Н21)
  • =МАКС(О2:О21) or =МАКС(О2:О21)
  • =МЕДИАН(Б2:К21) or =МЕДИАН(Б2:К21) – разматрамо коришћење почетних података табеле, из горе наведеног разлога.

Сада када смо завршили са прорачунима, хајде да урадимо мало форматирања. Прво, поставимо исти формат приказа података за све ћелије. Изаберите све ћелије на листу, да бисте то урадили, користите пречицу на тастатури Цтрл + Аили кликните на икону Изабери све, који се налази на пресеку наслова редова и колона. Затим кликните Цомма Стиле (Делимитед Формат) картица Početna (Кућа).

Затим промените изглед заглавља колона и редова:

  • Болд стил фонта.
  • Централно поравнање.
  • Испуна боја.

И на крају, хајде да поставимо формат зброја.

Овако би то требало да изгледа на крају:

Ако вам све одговара, престаните да снимате макро.

Честитам! Управо сте сами снимили свој први макро у Екцел-у.

Да бисмо користили генерисани макро, морамо да сачувамо Екцел документ у формату који подржава макрое. Прво треба да избришемо све податке из табеле коју смо креирали, односно да буде празан шаблон. Чињеница је да ћемо у будућности, радећи са овим шаблоном, увозити најновије и релевантне податке у њега.

Да бисте избрисали све ћелије из података, кликните десним тастером миша на икону Изабери све, који се налази на пресеку наслова редова и колона, и из контекстног менија изаберите Избрисати (Избриши).

Сада је наш лист потпуно очишћен од свих података, док макро остаје снимљен. Морамо да сачувамо радну свеску као Екцел шаблон са омогућеним макроима који има екстензију КСЛТМ.

Важна тачка! Ако сачувате датотеку са екстензијом КСЛТКС, онда макро неће радити у њему. Иначе, радну свеску можете сачувати као Екцел 97-2003 шаблон, који има формат КСЛТ, такође подржава макрое.

Када је шаблон сачуван, можете безбедно да затворите Екцел.

Покретање макроа у Екцел-у

Пре него што откријемо све могућности макроа који сте креирали, мислим да је у реду да обратите пажњу на неколико важних тачака у вези са макроима уопште:

  • Макрои могу бити штетни.
  • Прочитајте претходни пасус поново.

ВБА код је веома моћан. Конкретно, може да обавља операције над датотекама изван тренутног документа. На пример, макро може да избрише или измени све датотеке у фасцикли Моји документи. Из тог разлога, покрените и дозволите само макрое из извора којима верујете.

Да бисте покренули наш макро за форматирање података, отворите датотеку шаблона коју смо креирали у првом делу овог упутства. Ако имате стандардна безбедносна подешавања, онда када отворите датотеку, изнад табеле ће се појавити упозорење да су макрои онемогућени и дугме за њихово омогућавање. Пошто смо сами направили шаблон и верујемо себи, притиснемо дугме Омогући садржај (Укључи садржај).

Следећи корак је увоз најновијег ажурираног скупа података из датотеке ЦСВ (на основу такве датотеке креирали смо наш макро).

Када увезете податке из ЦСВ датотеке, Екцел може од вас тражити да подесите нека подешавања како бисте исправно пренели податке у табелу.

Када се увоз заврши, идите на мени Макрои (Макрои) картица Поглед (Прикажи) и изаберите команду Виев Мацрос (Макро).

У дијалогу који се отвори видећемо линију са именом нашег макроа ФорматДата. Изаберите га и кликните трчање (Изврши).

Када макро почне да се покреће, видећете да курсор табеле скаче са ћелије на ћелију. Након неколико секунди, са подацима ће се обавити исте операције као при снимању макроа. Када је све спремно, табела треба да изгледа исто као оригинал који смо ручно форматирали, само са другачијим подацима у ћелијама.

Хајде да погледамо испод хаубе: Како функционише макро?

Као што је више пута поменуто, макро је програмски код у програмском језику. Висуал Басиц за апликације (ВБА). Када укључите режим снимања макроа, Екцел заправо бележи сваку вашу радњу у облику ВБА инструкција. Једноставно речено, Екцел пише код за вас.

Да бисте видели овај програмски код, потребно је да уђете у мени Макрои (Макрои) картица Поглед (погледајте) кликните Виев Мацрос (Макрои) и у дијалогу који се отвори кликните едит (Промена).

Отвара се прозор. Висуал Басиц за апликације, у којој ћемо видети програмски код макроа који смо снимили. Да, добро сте разумели, овде можете променити овај код и чак креирати нови макро. Радње које смо извршили са табелом у овој лекцији могу се снимити помоћу аутоматског снимања макроа у Екцел-у. Али сложенији макрои, са фино подешеном секвенцом и логиком акције, захтевају ручно програмирање.

Хајде да додамо још један корак нашем задатку…

Замислите да је наша оригинална датотека са подацима дата.цсв се креира аутоматски неким процесом и увек се чува на диску на истом месту. На пример, Ц:Датадата.цсв – путања до датотеке са ажурираним подацима. Процес отварања ове датотеке и увоза података из ње такође се може снимити у макроу:

  1. Отворите датотеку шаблона у којој смо сачували макро − ФорматДата.
  2. Креирајте нови макро под називом ЛоадДата.
  3. Док снимате макро ЛоадДата увоз података из датотеке дата.цсв – као што смо радили у претходном делу часа.
  4. Када се увоз заврши, зауставите снимање макроа.
  5. Избришите све податке из ћелија.
  6. Сачувајте датотеку као Екцел шаблон са омогућеним макроима (КСЛТМ екстензија).

Дакле, покретањем овог шаблона добијате приступ двама макроима – један учитава податке, други их форматира.

Ако желите да уђете у програмирање, можете комбиновати радње ова два макроа у један – једноставним копирањем кода са ЛоадДата до почетка кода ФорматДата.

Ostavite komentar