Научите како да користите макрое за аутоматизовање задатака
Једна од моћнијих, али ријетко кориштених функција Екцела је могућност врло једноставног креирања аутоматизираних задатака и прилагођене логике унутар макронаредби. Макрои пружају идеалан начин за уштеду времена на предвидљивим, репетитивним задацима као и стандардизовање формата докумената - много пута без потребе да се напише једна линија кода.
Ако сте знатижељни какви су макрои или како их заправо креирати, нема проблема - провест ћемо вас кроз цијели процес.
Белешка: исти процес би требао радити у већини верзија Мицрософт Оффицеа. Слике екрана могу изгледати мало другачије.
Шта је макро?
Мицрософт Оффице Мацро (пошто се ова функција односи на неколико МС Оффице апликација) је једноставно Висуал Басиц фор Апплицатионс (ВБА) код сачуван у документу. За сличну аналогију, замислите документ као ХТМЛ и макро као Јавасцрипт. На исти начин на који Јавасцрипт може манипулирати ХТМЛ-ом на веб страници, макро може манипулирати документом.
Макрои су невероватно моћни и могу да ураде скоро све што ваша машта може да дочара. Као (веома) кратку листу функција које можете да урадите са макроом:
- Примените стил и форматирање.
- Манипулирајте подацима и текстом.
- Комуницирајте са изворима података (база података, текстуалне датотеке, итд.).
- Направите потпуно нове документе.
- Било која комбинација, било којим редоследом, било које од горе наведених.
Креирање макроа: Објашњење по примјеру
Почињемо са ЦСВ датотеком у врту. Ништа посебно овде, само 10 × 20 сет бројева између 0 и 100 са заглављем реда и колоне. Наш циљ је да направимо добро обликован, презентабилан лист података који садржи укупне збирне податке за сваки ред.
Као што смо горе навели, макро је ВБА код, али једна од лепих ствари у Екцел-у је да их можете креирати / снимити са потребним кодирањем нула - као што ћемо овде урадити.
Да бисте креирали макро, идите на Виев> Мацрос> Мацро.
Доделите име макроу (без размака) и кликните на ОК.
Када се ово уради, све Ваших акција је забележено - свака промена ћелије, акција померања, промена величине прозора, име.
Постоји неколико места која указују да је Екцел режим снимања. Један је прегледом Мацро менија и уз напомену да је Стоп Рецординг заменио опцију за снимање макроа.
Други је у доњем десном углу. Икона 'стоп' означава да је у макро режиму и притискање овде ће зауставити снимање (исто тако, када није у режиму снимања, ова икона ће бити дугме за снимање макроа, које можете користити уместо менија Макрои).
Сада када снимамо наш макро, применимо наше збирне калкулације. Прво додајте заглавља.
Затим примените одговарајуће формуле (респективно):
- = СУМ (Б2: К2)
- = ПРОСЈЕК (Б2: К2)
- = МИН (Б2: К2)
- = МАКС (Б2: К2)
- = МЕДИАН (Б2: К2)
Сада означите све ћелије за израчун и повуците дужину свих редова података да бисте применили израчуне за сваки ред.
Када се то уради, сваки ред треба да прикаже њихове резимее.
Сада желимо да добијемо збирне податке за цео лист, тако да применимо још неколико калкулација:
Редом:
- = СУМ (Л2: Л21)
- = ПРОСЈЕК (Б2: К21) *Ово се мора израчунати за све податке, јер просјек просјечних редова не мора нужно бити једнак просјеку свих вриједности.
- = МИН (Н2: Н21)
- = МАКС (О2: О21)
- = МЕДИАН (Б2: К21) * Израчунато за све податке из истог разлога као горе.
Сада када су прорачуни завршени, применићемо стил и форматирање. Прво примените опште форматирање бројева на све ћелије тако што ћете изабрати Све (или Цтрл + А или кликните на ћелију између заглавља реда и колоне) и изаберите икону „Стил зареза“ у менију Почетак.
Затим примените визуелно обликовање на заглавља реда и колоне:
- Одважан.
- Центеред.
- Боја позадине.
И на крају, примените неки стил на укупне вредности.
Када се све заврши, овако изгледа наш лист са подацима:
Пошто смо задовољни резултатима, зауставите снимање макроа.
Честитамо - управо сте направили Екцел макро.
Да бисмо могли да користимо наш нови снимљени макро, морамо да сачувамо Екцелову радну свеску у формату фајла који је омогућен за макро. Међутим, пре него што то урадимо, прво морамо да обришемо све постојеће податке тако да не буду уграђени у наш предложак (идеја је сваки пут када користимо овај предложак, увеземо најсвежије податке).
Да бисте то урадили, изаберите све ћелије и избришите их.
Са сада избрисаним подацима (али макроима који су још увек укључени у Екцел датотеку), желимо да сачувамо датотеку као датотеку са шаблонима за макро (КСЛТМ). Важно је напоменути да ако сачувате ово као стандардни предложак (КСЛТКС) фајл онда ће макрои не бити у могућности да се извуче из њега. Алтернативно, можете сачувати датотеку као датотеку наслијеђеног предлошка (КСЛТ), која ће омогућити покретање макронаредби.
Када датотеку сачувате као предложак, идите напријед и затворите Екцел.
Коришћење Екцел макроа
Пре него што покријемо како можемо да применимо овај ново снимљени макро, важно је да покријемо неколико тачака о макроима уопште:
- Макрои могу бити злонамерни.
- Види горе.
ВБА код је заправо прилично моћан и може манипулирати датотекама изван опсега тренутног документа. На пример, макро може да промени или избрише случајне датотеке у фасцикли „Моји документи“. Као такво, важно је да будете сигурни само покретање макронаредби из поузданих извора.
Да бисте користили макро формата података, отворите датотеку Екцел шаблона која је креирана изнад. Када то урадите, под претпоставком да имате омогућене стандардне безбедносне поставке, видећете упозорење на врху радне свеске у којем се каже да су макрои онемогућени. Пошто верујемо макроу који смо сами креирали, кликните на дугме "Омогући садржај".
Следеће, увеземо најновије податке из ЦСВ-а (то је извор који радни лист користи за креирање макроа).
Да бисте довршили увоз ЦСВ датотеке, можда ћете морати да подесите неколико опција како би је Екцел исправно интерпретирао (нпр. Граничник, присутна заглавља, итд.).
Када се наши подаци увезу, једноставно идите на мени Макрои (на картици Приказ) и изаберите Прикажи макрое.
У дијалошком оквиру који се појављује, видимо макро “ФорматДата” који смо снимили горе. Изаберите је и кликните на Покрени.
Када покренете, можда ћете видети да се курсор помера за неколико тренутака, али ћете видети да се подаци манипулишу баш тако као што смо то снимили. Када је све речено и учињено, требало би да изгледа као наш оригинал - осим са различитим подацима.
Гледање испод хаубе: Шта чини макро рад
Као што смо споменули неколико пута, макро је вођен Висуал Басиц-ом за апликације (ВБА) код. Када “снимите” макро, Екцел заправо преводи све што радите у одговарајуће ВБА инструкције. Једноставно речено - не морате да пишете никакав код јер Екцел пише код за вас.
Да бисте погледали код који чини наш макро покрет, из дијалога Макрои притисните дугме Уреди.
Прозор који се отвара приказује изворни код који је снимљен из наших радњи приликом креирања макроа. Наравно, можете уредити овај код или чак креирати нове макрое у цијелом прозору кода. Иако ће радња снимања која се користи у овом чланку вероватно одговарати већини потреба, више прилагођене акције или условне радње захтевају да уредите изворни код.
Узимајући наш пример један корак даље ...
Хипотетички, претпоставимо да је наш извор података, дата.цсв, произведен аутоматизованим процесом који увек чува фајл на истој локацији (нпр. Ц: Дата.цсв је увек најновији податак). Процес отварања овог фајла и његовог увоза може се лако направити у макроу:
- Отворите датотеку Екцел шаблона која садржи макро „ФорматДата“.
- Снимите нови макро под називом “ЛоадДата”.
- Са снимањем макроа, увезите датотеку са подацима као што бисте иначе радили.
- Када се подаци увезу, зауставите снимање макроа.
- Избришите све податке ћелије (изаберите све, а затим избришите).
- Сачувајте ажурирани предложак (не заборавите да користите формат предложка за макро).
Када се ово уради, сваки пут када се отвори предложак биће два макронаредбе - један који учитава наше податке и други који га форматира.
Ако сте заиста хтели да запрљате руке са мало уређивања кода, можете лако да комбинујете ове акције у један макро тако што ћете копирати код произведен из "ЛоадДата" и убацити га на почетак кода из "ФорматДата".
Преузмите овај предложак
Ради Ваше удобности, укључили смо и Екцел предложак произведен у овом чланку, као и узорак података са којим можете играти.
Преузмите Екцел макро шаблон из Хов-То Геек