Alamin Kung Paano Gumamit ng Excel Macros upang I-automate ang Mga Nakakatawang Gawain

Ang isa sa mga mas malakas, ngunit bihirang ginagamit na mga pag-andar ng Excel ay ang kakayahang madaling lumikha ng mga awtomatikong gawain at pasadyang lohika sa loob ng macros. Nagbibigay ang Macros ng isang perpektong paraan upang makatipid ng oras sa mahuhulaan, paulit-ulit na mga gawain pati na rin gawing pamantayan ang mga format ng dokumento - maraming beses nang hindi kinakailangang magsulat ng isang linya ng code.

Kung nag-usisa ka kung ano ang mga macros o kung paano mo talaga lilikhain ang mga ito, walang problema - lalakayan ka namin sa buong proseso.

Tandaan:ang parehong proseso ay dapat na gumana sa karamihan ng mga bersyon ng Microsoft Office. Ang mga screenshot ay maaaring magmukhang bahagyang magkakaiba.

Ano ang isang Macro?

Ang isang Microsoft Office Macro (tulad ng pag-andar na ito ay nalalapat sa maraming mga MS Office Applications) ay simpleng Visual Basic for Applications (VBA) na code na nai-save sa loob ng isang dokumento. Para sa isang maihahambing na pagkakatulad, mag-isip ng isang dokumento bilang HTML at isang macro bilang Javascript. Sa halos pareho ng paraan na maaaring mamanipula ng Javascript ang HTML sa isang webpage, maaaring manipulahin ng isang macro ang isang dokumento.

Ang Macros ay hindi kapani-paniwala malakas at maaaring gumawa ng halos anumang bagay na maaaring maipakita ng iyong imahinasyon. Bilang isang (napaka) maikling listahan ng mga pagpapaandar na maaari mong gawin sa isang macro:

  • Mag-apply ng istilo at pag-format.
  • Manipula ang data at teksto.
  • Makipag-usap sa mga mapagkukunan ng data (database, mga file ng teksto, atbp.).
  • Lumikha ng ganap na mga bagong dokumento.
  • Anumang kombinasyon, sa anumang pagkakasunud-sunod, ng alinman sa nabanggit.

Lumilikha ng isang Macro: Isang Paliwanag sa pamamagitan ng Halimbawa

Nagsisimula kami sa iyong hardin na CSV file. Walang espesyal dito, isang hanay lamang ng 10 × 20 na mga numero sa pagitan ng 0 at 100 na may parehong hilera at header ng haligi. Ang aming hangarin ay upang makabuo ng isang mahusay na nai-format, napapakitang sheet ng data na nagsasama ng mga kabuuan ng buod para sa bawat hilera.

Tulad ng sinabi namin sa itaas, ang isang macro ay VBA code, ngunit ang isa sa mga magagandang bagay tungkol sa Excel ay maaari mong likhain / i-record ang mga ito nang walang kinakailangang pag-coding - tulad ng gagawin namin dito.

Upang lumikha ng isang macro, pumunta sa View> Macros> Record Macro.

Italaga ang macro ng isang pangalan (walang mga puwang) at i-click ang OK.

Kapag tapos na ito, lahat ng iyong mga aksyon ay naitala - bawat pagbabago ng cell, pag-scroll ng pagkilos, pagbabago ng laki ng window, pinangalanan mo ito.

Mayroong isang pares ng mga lugar na nagpapahiwatig na ang Excel ay isang mode ng record. Ang isa ay sa pamamagitan ng pagtingin sa menu ng Macro at tandaan na ang Pagre-record ng Stop ay pinalitan ang pagpipilian para sa Record Macro.

Ang isa ay nasa kanang sulok sa ibaba. Ipinapahiwatig ng icon na 'stop' na ito ay nasa macro mode at ang pagpindot dito ay ititigil ang pag-record (gayun din, kapag wala sa record mode, ang icon na ito ay magiging pindutan ng Record Macro, na maaari mong gamitin sa halip na pumunta sa menu ng Macros).

Ngayong nagtatala kami ng aming macro, ilapat na namin ang aming mga kalkulasyon sa buod. Idagdag muna ang mga header.

Susunod, ilapat ang naaangkop na mga formula (ayon sa pagkakabanggit):

  • = SUM (B2: K2)
  • = AVERAGE (B2: K2)
  • = MIN (B2: K2)
  • = MAX (B2: K2)
  • = MEDIAN (B2: K2)

Ngayon, i-highlight ang lahat ng mga cell ng pagkalkula at i-drag ang haba ng lahat ng aming mga hilera ng data upang ilapat ang mga kalkulasyon sa bawat hilera.

Kapag tapos na ito, dapat ipakita ng bawat hilera ang kani-kanilang mga buod.

Ngayon, nais naming makuha ang data ng buod para sa buong sheet, kaya naglalagay kami ng ilan pang mga kalkulasyon:

Magalang:

  • = SUM (L2: L21)
  • = AVERAGE (B2: K21) *Dapat itong kalkulahin sa lahat ng data dahil ang average ng mga average na hilera ay hindi kinakailangang katumbas ng average ng lahat ng mga halaga.
  • = MIN (N2: N21)
  • = MAX (O2: O21)
  • = MEDIAN (B2: K21) * Nakalkula sa lahat ng data para sa parehong dahilan tulad ng nasa itaas.

Ngayon na tapos na ang mga kalkulasyon, ilalapat namin ang estilo at pag-format. Una ilapat ang pag-format ng pangkalahatang numero sa lahat ng mga cell sa pamamagitan ng paggawa ng Piliin ang Lahat (alinman sa Ctrl + A o i-click ang cell sa pagitan ng mga header ng hanay at haligi) at piliin ang icon na "Estilo ng Koma" sa ilalim ng menu ng Home.

Susunod, maglapat ng ilang visual na pag-format sa parehong mga header ng hilera at haligi:

  • Matapang.
  • Nakasentro
  • Kulay ng pagpuno sa background.

At sa wakas, maglagay ng ilang istilo sa mga kabuuan.

Kapag natapos ang lahat, ito ang hitsura ng aming sheet ng data:

Dahil nasiyahan kami sa mga resulta, ihinto ang pagrekord ng macro.

Binabati kita - lumikha ka lamang ng isang Excel macro.

Upang magamit ang aming bagong naitala na macro, kailangan naming i-save ang aming Excel Workbook sa isang format na file na pinagana ang macro. Gayunpaman, bago namin gawin iyon, kailangan muna naming i-clear ang lahat ng mga umiiral na data upang hindi ito naka-embed sa aming template (ang ideya sa tuwing gagamitin namin ang template na ito, mai-import namin ang pinaka-napapanahong data).

Upang magawa ito, piliin ang lahat ng mga cell at tanggalin ang mga ito.

Sa pag-clear ng data ngayon (ngunit ang mga macros ay kasama pa rin sa Excel file), nais naming i-save ang file bilang isang naka-template na template na may kakayahang template (XLTM). Mahalagang tandaan na kung nai-save mo ito bilang isang karaniwang template (XLTX) na file pagkatapos ay macros hindi maaring patakbuhin mula rito. Bilang kahalili, maaari mong i-save ang file bilang isang template ng legacy (XLT) na file, na magpapahintulot sa mga macros na patakbuhin.

Kapag na-save mo na ang file bilang isang template, sige at isara ang Excel.

Paggamit ng isang Excel Macro

Bago takpan kung paano namin mailalapat ang bagong naitala na macro, mahalagang masakop ang ilang mga punto tungkol sa macros sa pangkalahatan:

  • Ang Macros ay maaaring nakakahamak.
  • Tingnan ang punto sa itaas.

Ang VBA code ay talagang napakalakas at maaaring manipulahin ang mga file sa labas ng saklaw ng kasalukuyang dokumento. Halimbawa, ang isang macro ay maaaring magbago o magtanggal ng mga random na file sa iyong folder ng Aking Mga Dokumento. Tulad ng naturan, mahalagang tiyakin na ikaw lamang patakbuhin ang macros mula sa mga mapagkakatiwalaang mapagkukunan.

Upang mailagay ang format ng aming data ng macro, buksan ang file ng Excel Template na nilikha sa itaas. Kapag ginawa mo ito, sa pag-aakalang mayroon kang karaniwang mga setting ng seguridad na pinagana, makakakita ka ng isang babala sa tuktok ng workbook na nagsasabing ang macros ay hindi pinagana. Dahil nagtitiwala kami sa isang macro na nilikha ng aming mga sarili, i-click ang pindutang 'Paganahin ang Nilalaman'.

Susunod, mai-import namin ang pinakabagong hanay ng data mula sa isang CSV (ito ang mapagkukunan ng worksheet na ginamit upang likhain ang aming macro).

Upang makumpleto ang pag-import ng CSV file, maaaring magtakda ka ng ilang mga pagpipilian upang maipaliwanag nang wasto ito ng Excel (hal. Delimiter, mga header na naroroon, atbp.).

Kapag na-import ang aming data, pumunta lamang sa menu ng Macros (sa ilalim ng tab na Tingnan) at piliin ang Tingnan ang Macros.

Sa nagresultang kahon ng dayalogo, nakikita namin ang macro na "FormatData" na naitala namin sa itaas. Piliin ito at i-click ang Run.

Sa sandaling tumatakbo, maaari mong makita ang cursor na tumatalon sa paligid ng ilang sandali, ngunit tulad nito makikita mo ang data na nagmamanipula saktong tulad ng naitala namin ito. Kapag nasabi at tapos na ang lahat, dapat itong magmukhang katulad ng aming orihinal - maliban sa magkakaibang data.

Naghahanap sa ilalim ng Hood: Ano ang Gumagawa ng isang Macro Work

Tulad ng nabanggit namin ng ilang beses, ang isang macro ay hinihimok ng Visual Basic for Applications (VBA) code. Kapag "naitala" mo ang isang macro, talagang isinasalin ng Excel ang lahat ng iyong ginagawa sa kani-kanilang mga tagubilin sa VBA. Upang ilagay ito nang simple - hindi mo kailangang magsulat ng anumang code dahil sinusulat ng Excel ang code para sa iyo.

Upang matingnan ang code na nagpapatakbo ng aming macro, mula sa dialog ng Macros i-click ang pindutang I-edit.

Ang window na bubukas ay nagpapakita ng source code na naitala mula sa aming mga pagkilos kapag lumilikha ng macro. Siyempre, maaari mong i-edit ang code na ito o kahit na lumikha ng mga bagong macros na ganap sa loob ng window ng code. Habang ang aksyon sa pagrekord na ginamit sa artikulong ito ay malamang na magkasya sa karamihan ng mga pangangailangan, ang higit na lubos na napasadyang mga pagkilos o mga kondisyong pagkilos ay mangangailangan sa iyo upang i-edit ang source code.

Kinukuha ang aming Halimbawa Isang Hakbang na Malayo…

Hypothetically, ipagpalagay ang aming pinagmulang file ng data, data.csv, ay ginawa ng isang awtomatikong proseso na laging nai-save ang file sa parehong lokasyon (hal. C: \ Data \ data.csv ay palaging ang pinakabagong data). Ang proseso ng pagbubukas ng file na ito at pag-import nito ay maaaring gawing isang macro din:

  1. Buksan ang file ng Excel Template na naglalaman ng aming macro na "FormatData".
  2. Itala ang isang bagong macro na pinangalanang "LoadData".
  3. Gamit ang pagrekord sa macro, i-import ang file ng data tulad ng karaniwang gusto mo.
  4. Kapag na-import na ang data, ihinto ang pagrekord ng macro.
  5. Tanggalin ang lahat ng data ng cell (piliin ang lahat pagkatapos tanggalin).
  6. I-save ang na-update na template (tandaan na gumamit ng isang format na may template na pinagana ang macro).

Kapag tapos na ito, tuwing binuksan ang template ay magkakaroon ng dalawang macros - isa na naglo-load ng aming data at isa pa kung aling ito ang nai-format.

Kung nais mo talagang gawing marumi ang iyong mga kamay sa kaunting pag-edit ng code, madali mong pagsamahin ang mga pagkilos na ito sa isang solong macro sa pamamagitan ng pagkopya ng code na ginawa mula sa "LoadData" at ipasok ito sa simula ng code mula sa "FormatData".

I-download ang Template na ito

Para sa iyong kaginhawaan, isinama namin ang parehong template ng Excel na ginawa sa artikulong ito pati na rin ang isang sample na file ng data para sa iyo upang makapaglaro.

Mag-download ng Excel Macro Template mula sa How-To Geek


$config[zx-auto] not found$config[zx-overlay] not found