Ang Microsoft Excel macros ay maaaring makabuluhang mapabilis ang trabaho sa mga dokumento sa editor ng spreadsheet na ito. Nakamit ito sa pamamagitan ng pag-automate ng mga paulit-ulit na pagkilos na naitala sa espesyal na code. Tingnan natin kung paano lumikha ng mga macros sa Excel, at kung paano i-edit ang mga ito.
Mga Paraan ng Pag-record ng Macro
Ang isang macro ay maaaring isulat sa dalawang paraan:
- awtomatiko;
- sa pamamagitan ng kamay.
Gamit ang unang pagpipilian, naitala mo lang ang ilang mga aksyon sa programa ng Microsoft Excel na kasalukuyang ginagawa mo. Pagkatapos, maaari mong i-play ang recording na ito. Ang pamamaraang ito ay napakadali, at hindi nangangailangan ng kaalaman sa code, ngunit ang application nito sa pagsasanay ay medyo limitado.
Ang manu-manong pag-record ng macro, sa kabaligtaran, ay nangangailangan ng kaalaman sa programming, dahil ang code ay mano-mano ang nai-type mula sa keyboard. Ngunit, tama na nakasulat na code sa ganitong paraan ay maaaring makabuluhang mapabilis ang pagpapatupad ng mga proseso.
Awtomatikong Pag-record ng Macro
Bago mo masimulan ang awtomatikong pag-record ng macro, dapat mong paganahin ang mga macros sa Microsoft Excel.
Susunod, pumunta sa tab na "Developer". Mag-click sa pindutan ng "Macro Record", na matatagpuan sa laso sa block ng tool na "Code".
Ang window ng pag-setup ng pag-record ng macro ay bubukas. Dito maaari mong tukuyin ang anumang pangalan ng macro kung ang default ay hindi angkop sa iyo. Ang pangunahing bagay ay ang pangalan ay nagsisimula sa isang sulat, at hindi sa isang numero. Gayundin, ang titulo ay hindi dapat maglaman ng mga puwang. Iniwan namin ang default na pangalan - "Macro1".
Agad, kung nais, maaari kang magtakda ng isang shortcut sa keyboard, kapag nag-click, ilulunsad ang macro. Ang unang key ay dapat na Ctrl key, at ang gumagamit ay nagtatakda ng pangalawang key nang nakapag-iisa. Halimbawa, kami, bilang isang halimbawa, inilalagay ang susi M.
Susunod, kailangan mong matukoy kung saan maiimbak ang macro. Bilang default, maiimbak ito sa parehong libro (file), ngunit kung nais mo, maaari mong itakda ang imbakan sa isang bagong libro, o sa isang hiwalay na libro ng macros. Iiwan namin ang default na halaga.
Sa mismong ibaba ng patlang ng mga setting ng macro, maaari kang mag-iwan ng anumang paglalarawan ng macro na angkop para sa konteksto. Ngunit, hindi ito kinakailangan.
Kapag nakumpleto ang lahat ng mga setting, mag-click sa pindutang "OK".
Pagkatapos nito, ang lahat ng iyong mga aksyon sa ito workbook ng Excel (file) ay maitala sa isang macro hanggang sa ikaw mismo ang tumigil sa pag-record.
Halimbawa, isinusulat namin ang pinakasimpleng pagkilos na aritmetika: pagdaragdag ng mga nilalaman ng tatlong mga cell (= C4 + C5 + C6).
Pagkatapos nito, mag-click sa pindutan ng "Stop Record". Ang pindutan na ito ay na-convert mula sa "Macro Record" na butones, pagkatapos na magsimula ang pagrekord.
Tumakbo ang Macro
Upang masuri kung paano gumagana ang naitala na macro, i-click ang pindutan ng "Macros" sa parehong tool na "Code", o pindutin ang Alt + F8.
Pagkatapos nito, bubukas ang isang window gamit ang isang listahan ng mga naitala na macros. Hinahanap namin ang macro na naitala namin, piliin ito, at mag-click sa pindutan na "Run".
Maaari mo ring gawin ang mas madali, at huwag tumawag sa window ng pagpili ng macro. Natatandaan namin na naitala namin ang isang kumbinasyon ng "mainit na mga susi" para sa mabilis na pagtawag sa macro. Sa aming kaso, ito ay Ctrl + M. Nai-type namin ang kumbinasyon na ito sa keyboard, pagkatapos kung saan magsisimula ang macro.
Tulad ng nakikita mo, ang macro ay gumanap nang eksakto sa lahat ng mga pagkilos na naitala nang mas maaga.
Pag-edit ng macro
Upang ma-edit ang macro, mag-click muli sa pindutan ng "Macros". Sa window na bubukas, piliin ang ninanais na macro, at mag-click sa pindutang "Baguhin".
Binubuksan ang Microsoft Visual Basic (VBE) - ang kapaligiran kung saan ang pag-edit ng macros.
Ang pagrekord ng bawat macro ay nagsisimula sa utos ng Sub, at nagtatapos sa utos ng End Sub. Kaagad pagkatapos ng Sub na utos, ang pangalan ng macro ay ipinahiwatig. Ang Saklaw ng "Range (" ... "). Piliin ang pagpili ng seleksyon ng cell. Halimbawa, kasama ang utos na "Saklaw (" C4 "). Piliin," ang sel C4 ay pinili. Ang operator na "ActiveCell.FormulaR1C1" ay ginagamit upang maitala ang mga pagkilos sa mga formula, at para sa iba pang mga kalkulasyon.
Subukan nating baguhin ang macro nang kaunti. Upang gawin ito, idagdag ang expression sa macro:
Saklaw ("C3"). Piliin
ActiveCell.FormulaR1C1 = "11"
Ang expression na "ActiveCell.FormulaR1C1 =" = R [-3] C + R [-2] C + R [-1] C "ay pinalitan ng" ActiveCell.FormulaR1C1 = "= R [-4] C + R [-3 ] C + R [-2] C + R [-1] C "."
Isinara namin ang editor, at pinapatakbo ang macro, bilang huling oras. Tulad ng nakikita mo, dahil sa mga pagbabagong ipinakilala namin, isa pang cell data ang idinagdag. Kasama rin ito sa pagkalkula ng kabuuang halaga.
Kung ang macro ay napakalaking, maaaring tumagal ng mahabang panahon upang maisagawa. Ngunit, sa pamamagitan ng paggawa ng isang manu-manong pagbabago sa code, maaari naming mapabilis ang proseso. Idagdag ang utos na "Application.ScreenUpdating = Mali". Makakatipid ito ng lakas ng computing, na nangangahulugang pabilisin ang trabaho. Ito ay nakamit sa pamamagitan ng pagpipigil mula sa pag-update ng screen sa panahon ng mga pagpapatakbo ng computational. Upang ipagpatuloy ang pag-update matapos ang pagpapatupad ng macro, sa dulo isinulat namin ang utos na "Application.ScreenUpdating = Tama"
Idagdag ang utos na "Application.Calculation = xlCalculationManual" sa simula ng code, at sa dulo ng code ay nagdagdag kami ng "Application.Calculation = xlCalculationAutomatic". Kaya, sa simula ng macro, pinapatay namin ang awtomatikong pag-recalculation ng resulta pagkatapos ng bawat pagbabago ng cell, at sa pagtatapos ng macro, i-on ito. Sa gayon, kinakalkula ng Excel ang resulta ng isang beses lamang, at hindi ito palaging isasaalang-alang, na makatipid ng oras.
Pagsusulat ng isang macro code mula sa simula
Ang mga advanced na gumagamit ay hindi lamang mai-edit at ma-optimize ang naitala na macros, ngunit sumulat din ng macro code mula sa simula. Upang simulan ito, kailangan mong mag-click sa pindutan na "Visual Basic", na matatagpuan sa pinakadulo simula ng laso ng developer.
Pagkatapos nito, bubukas ang pamilyar na window ng editor ng VBE.
Sinusulat ng programista ang manu-manong code doon nang manu-mano.
Tulad ng nakikita mo, ang macros sa Microsoft Excel ay maaaring makabuluhang mapabilis ang pagpapatupad ng mga nakagawiang at pare-parehong proseso. Ngunit, sa karamihan ng mga kaso, ang macros na ang code ay nakasulat nang manu-mano sa halip na awtomatikong naitala ang mga aksyon ay mas angkop para dito. Bilang karagdagan, ang macro code ay maaaring mai-optimize sa pamamagitan ng editor ng VBE upang mapabilis ang gawain.