Hvordan automatisere rutineoppgaver i Excel med makroer

Excel har en kraftig, men samtidig svært sjelden brukt, evne til å lage automatiske handlingssekvenser ved hjelp av makroer. En makro er en ideell utvei hvis du har å gjøre med samme type oppgaver som gjentas mange ganger. For eksempel databehandling eller dokumentformatering etter en standardisert mal. I dette tilfellet trenger du ikke kunnskap om programmeringsspråk.

Er du allerede nysgjerrig på hva en makro er og hvordan den fungerer? Gå deretter frimodig videre - så vil vi trinn for trinn gjøre hele prosessen med å lage en makro med deg.

Hva er makro?

En makro i Microsoft Office (ja, denne funksjonaliteten fungerer på samme måte i mange applikasjoner av Microsoft Office-pakken) er en programkode i et programmeringsspråk Visual basic for applikasjoner (VBA) lagret inne i dokumentet. For å gjøre det klarere kan et Microsoft Office-dokument sammenlignes med en HTML-side, så er en makro en analog av Javascript. Hva Javascript kan gjøre med HTML-data på en nettside er veldig likt hva en makro kan gjøre med data i et Microsoft Office-dokument.

Makroer kan gjøre omtrent alt du vil i et dokument. Her er noen av dem (en veldig liten del):

  • Bruk stiler og formatering.
  • Utfør ulike operasjoner med numeriske og tekstdata.
  • Bruk eksterne datakilder (databasefiler, tekstdokumenter, etc.)
  • Lag et nytt dokument.
  • Gjør alt ovenfor i en hvilken som helst kombinasjon.

Lage en makro – et praktisk eksempel

La oss for eksempel ta den vanligste filen CSV. Dette er en enkel 10×20 tabell fylt med tall fra 0 til 100 med overskrifter for kolonner og rader. Vår oppgave er å gjøre om dette datasettet til en presentabelt formatert tabell og generere totaler i hver rad.

Som allerede nevnt er en makro kode skrevet i programmeringsspråket VBA. Men i Excel kan du lage et program uten å skrive en kodelinje, noe vi skal gjøre akkurat nå.

Åpne for å lage en makro Se (Skriv) > Makroer (Makro) > Ta opp makro (Makroopptak...)

Gi makroen et navn (ingen mellomrom) og klikk OK.

Fra dette øyeblikket blir ALLE handlingene dine med dokumentet registrert: endringer i celler, rulling gjennom tabellen, til og med endre størrelse på vinduet.

Excel signaliserer at makroopptaksmodus er aktivert to steder. Først på menyen Makroer (Makroer) – i stedet for en streng Ta opp makro (Ta opp en makro...) linje dukket opp Stop Recording (Stopp opptaket).

For det andre, i nedre venstre hjørne av Excel-vinduet. Ikon Stopp (liten firkant) indikerer at makroopptaksmodus er aktivert. Hvis du klikker på den, stopper opptaket. Omvendt, når opptaksmodus ikke er aktivert, er det et ikon for å aktivere makroopptak på dette stedet. Å klikke på den vil gi samme resultat som å slå på opptaket gjennom menyen.

Nå som makroopptaksmodus er aktivert, la oss komme til oppgaven vår. Først av alt, la oss legge til overskrifter for sammendragsdataene.

Deretter skriver du inn formlene i cellene i samsvar med navnene på overskriftene (varianter av formlene for engelsk og versjoner av Excel er gitt, celleadresser er alltid latinske bokstaver og tall):

  • =SUM(B2:K2) or =SUM(B2:K2)
  • =GJENNOMSNITT(B2:K2) or =СРЗНАЧ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MAKS(B2:K2) or =MAKS(B2:K2)
  • =MEDIAN(B2:K2) or =MEDIAN(B2:K2)

Velg nå cellene med formler og kopier dem til alle radene i tabellen vår ved å dra autofyllhåndtaket.

Etter at du har fullført dette trinnet, skal hver rad ha de tilsvarende summene.

Deretter vil vi oppsummere resultatene for hele tabellen, for dette gjør vi noen flere matematiske operasjoner:

Henholdsvis:

  • =SUM(L2:L21) or =SUM(L2:L21)
  • =GJENNOMSNITT(B2:K21) or =СРЗНАЧ(B2:K21) – for å beregne denne verdien, er det nødvendig å ta nøyaktig de første dataene i tabellen. Hvis du tar gjennomsnittet av gjennomsnittene for individuelle rader, vil resultatet bli annerledes.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MAKS(O2:O21) or =MAKS(O2:O21)
  • =MEDIAN(B2:K21) or =MEDIAN(B2:K21) – vi vurderer å bruke de første dataene i tabellen, av den grunn som er angitt ovenfor.

Nå som vi er ferdige med beregningene, la oss formatere litt. Først, la oss angi det samme datavisningsformatet for alle celler. Velg alle cellene på arket, for å gjøre dette, bruk hurtigtasten Ctrl + Aeller klikk på ikonet Velg alle, som er plassert i skjæringspunktet mellom rad- og kolonneoverskriftene. Klikk deretter Kommastil (Separert format)-fanen Hjemprodukt (Hjem).

Deretter endrer du utseendet på kolonne- og radoverskriftene:

  • Fet skriftstil.
  • Senterjustering.
  • Fargefyll.

Og til slutt, la oss sette opp formatet for totalsummene.

Slik skal det se ut til slutt:

Hvis alt passer deg, stopp innspillingen av makroen.

Gratulerer! Du har nettopp spilt inn din første makro i Excel selv.

For å bruke den genererte makroen, må vi lagre Excel-dokumentet i et format som støtter makroer. Først må vi slette alle dataene fra tabellen vi laget, dvs. gjøre den til en tom mal. Faktum er at i fremtiden, ved å jobbe med denne malen, vil vi importere de nyeste og relevante dataene til den.

For å fjerne alle celler fra data, høyreklikk på ikonet Velg alle, som er plassert i skjæringspunktet mellom rad- og kolonneoverskriftene, og velg fra hurtigmenyen Delete (Slett).

Nå er arket vårt fullstendig tømt for alle data, mens makroen forblir registrert. Vi må lagre arbeidsboken som en makroaktivert Excel-mal som har utvidelsen XLTM.

Et viktig poeng! Hvis du lagrer filen med filtypen XLTX, så vil ikke makroen fungere i den. Du kan forresten lagre arbeidsboken som en Excel 97-2003-mal, som har formatet XLT, støtter den også makroer.

Når malen er lagret, kan du trygt lukke Excel.

Kjøre en makro i Excel

Før jeg avslører alle mulighetene til makroen du opprettet, tror jeg det er riktig å ta hensyn til et par viktige punkter angående makroer generelt:

  • Makroer kan være skadelige.
  • Les forrige avsnitt igjen.

VBA-koden er veldig kraftig. Spesielt kan den utføre operasjoner på filer utenfor gjeldende dokument. For eksempel kan en makro slette eller endre alle filer i en mappe Mine dokumenter. Av denne grunn må du bare kjøre og tillate makroer fra kilder du stoler på.

For å kjøre dataformateringsmakroen vår, åpne malfilen vi opprettet i den første delen av denne opplæringen. Hvis du har standard sikkerhetsinnstillinger, vil det vises en advarsel over tabellen når du åpner en fil om at makroer er deaktivert, og en knapp for å aktivere dem. Siden vi har laget malen selv og vi stoler på oss selv, trykker vi på knappen Aktiver innhold (Inkluder innhold).

Neste trinn er å importere det siste oppdaterte datasettet fra filen CSV (basert på en slik fil laget vi makroen vår).

Når du importerer data fra en CSV-fil, kan Excel be deg om å sette opp noen innstillinger for å overføre dataene til tabellen på riktig måte.

Når importen er ferdig, gå til menyen Makroer (Makroer)-fanen Se (Se) og velg en kommando Vis makroer (Makro).

I dialogboksen som åpnes, vil vi se en linje med navnet på makroen vår Formater Data. Velg den og klikk Kjør (Henrette).

Når makroen begynner å kjøre, vil du se tabellmarkøren hoppe fra celle til celle. Etter noen sekunder vil de samme operasjonene gjøres med dataene som ved opptak av en makro. Når alt er klart, skal tabellen se lik ut som originalen som vi formaterte for hånd, bare med forskjellige data i cellene.

La oss se under panseret: Hvordan fungerer en makro?

Som nevnt mer enn en gang er en makro programkode i et programmeringsspråk. Visual basic for applikasjoner (VBA). Når du slår på makroopptaksmodus, registrerer Excel faktisk hver handling du gjør i form av VBA-instruksjoner. Enkelt sagt, Excel skriver koden for deg.

For å se denne programkoden trenger du i menyen Makroer (Makroer)-fanen Se (se) klikk Vis makroer (Makroer) og klikk i dialogboksen som åpnes Rediger (Endring).

Vinduet åpnes. Visual basic for applikasjoner, der vi vil se programkoden til makroen vi spilte inn. Ja, du forsto det riktig, her kan du endre denne koden og til og med lage en ny makro. Handlingene vi utførte med tabellen i denne leksjonen kan registreres ved hjelp av automatisk makroopptak i Excel. Men mer komplekse makroer, med finjustert sekvens og handlingslogikk, krever manuell programmering.

La oss legge til ett trinn til i oppgaven vår...

Tenk deg at vår originale datafil data.csv opprettes automatisk av en eller annen prosess og lagres alltid på disken på samme sted. For eksempel, C:Datadata.csv – bane til filen med oppdaterte data. Prosessen med å åpne denne filen og importere data fra den kan også registreres i en makro:

  1. Åpne malfilen der vi lagret makroen − Formater Data.
  2. Opprett en ny makro kalt Last inn data.
  3. Mens du tar opp en makro Last inn data importere data fra filen data.csv – som vi gjorde i forrige del av leksjonen.
  4. Når importen er fullført, stopp innspillingen av makroen.
  5. Slett alle data fra cellene.
  6. Lagre filen som en makroaktivert Excel-mal (XLTM-utvidelse).

Ved å kjøre denne malen får du dermed tilgang til to makroer – den ene laster dataene, den andre formaterer dem.

Hvis du ønsker å komme inn i programmering, kan du kombinere handlingene til disse to makroene til én – ganske enkelt ved å kopiere koden fra Last inn data til begynnelsen av koden Formater Data.

Legg igjen en kommentar