Innlegg oppdatert: august 2021
Her er et leserspørsmål:
Jeg har en medarbeider som bruker Excel VBA-makroer til å analysere en haug med data. Kan du forklare hvordan makroer fungerer, og sannsynligvis foreslå en måte for meg å finne den ferdigheten? Alle enkle tips for nybegynnere blir satt stor pris på.
Takk for spørsmålet.
Introduksjon til Excel 365-makroer
Å mestre makroutvikling er sannsynligvis en av de viktigste ferdighetene som kreves for å bli en avansert Excel-bruker. I hovedsak bruker vi VBA-makroer for å automatisere oppgaver i Excel (også i Word, makroer er ganske nyttige ) som ellers ville vært hverdagslige, kjedelige og veldig tidkrevende.
Her er noen eksempler på oppgaver som vi kan automatisere med makroer i Excel:
- Opprette og manipulere arbeidsbøker og regneark.
- Opprette og manipulere diagrammer
- Importer data fra filer eller andre systemer.
- Analyser data og lag/oppdater diagrammer og dashbord
- Tilpass skjemaer for å fange tilbakemeldinger
- Sende e-poster
- Og mye mer…
På grunn av det faktum at Excel leveres med en innebygd makroopptaker (i motsetning til Outlook og PowerPoint), er det to hovedalternativer for å legge til en makro i en Excel-arbeidsbok:
1) Registrere en sekvens av brukerhandlinger som sannsynligvis er lett å komme i gang med, men som ikke skalerer opp for komplekse oppgaver som kan involvere interaksjon med andre Office-applikasjoner eller manipulering av større dataundersett.
2) Skrive makroer ved å utnytte Visual Basic for Applications (VBA). Dette er et relativt enkelt prosedyrespråk som lar deg raskt utvikle mer kompleks automatisering.
I dette innlegget skal vi dekke begge tilfellene. Vi starter med å vise deg hvordan du registrerer makroen og fortsetter med å gi en detaljert prosedyre for å sette inn VBA-makroer i regneark.
Vi demonstrerer begge alternativene ved å bruke en veldig enkel oppgave: Vi vil automatisere tilføyelsen av et regnearknavn "DEMO" til en eksisterende arbeidsbok og kopiere en spesifikk tabell fra Ark1 til den.
Ta opp Excel 365 / 2019-makroer
Vi bruker et veldig enkelt eksempel for å skissere prosessen. Fortsett som følger:
- I Excel åpner du en eksisterende arbeidsbok eller oppretter en helt ny.
- Naviger til Vis-fanen i det øvre båndet.
- På høyre side vil du legge merke til Makro-delen.
- Trykk på Vis og velg Ta opp makro.
- Skjemaet nedenfor åpnes. Gi nå et navn til makroen og lagre innholdet i den eksisterende arbeidsboken. Du legger kanskje merke til at her kan du enkelt tilordne en tastesnarvei slik at du lettere kan kjøre makroen.
Tips: Sørg for å angi en detaljert beskrivelse av makroen.
- Nå, trykk OK.
- På dette tidspunktet, fortsett og utfør manuelt trinnene du ønsker å registrere - i vårt tilfelle vil jeg gå videre og manuelt opprette det nye regnearket, gi det nytt navn og deretter kopiere tabellen fra Ark1.
- Når du er ferdig, trykk Makroer igjen og velg Stopp opptak.
- Hvis du nå trykker Makroer og deretter velger Vis makroer, vil du se en liste over alle makroer som er lagret i alle åpne arbeidsbøker (eller spesifikke)
- Hvis du trykker på Rediger-knappen, åpnes Microsoft VBA Editor.
- VBA-editoren viser koden som Excel nettopp har generert for deg i bakgrunnen. I den neste delen av denne opplæringen vil jeg vise deg hvordan du kan skrive en lignende kode på egen hånd.
Lagrer den makroaktiverte filen
Nå må vi lagre arbeidsboken. Siden den inneholder en makro, bør vi lagre den som en XSLM-fil (Macro Enabled Excel-fil)
- Trykk på Fil og deretter Lagre
- Velg en plassering på datamaskinen eller OneDrive der du vil lagre filen.
- Gi den et beskrivende navn
- Velg .xslm som filtype.
- Trykk OK.
- Bra jobbet, du har nettopp spilt inn en enkel makro!
Lag Excel VBA-makroer
Som vi tidligere har nevnt, vil Excel Macro-opptakeren i mange tilfeller komme til kort og vil ikke dekke alle dine behov. I disse tilfellene må du skrive din egen kode.
Tips: Det er tilfeller der du kanskje vil bruke en hybrid tilnærming til makrooppretting. Du kan starte med å ta opp makroen din og så bare gjøre manuelle justeringer av den automatisk genererte koden med VBA.
Sette opp Excel-utviklingsmiljøet
Denne høres ganske fancy ut, men er faktisk ganske enkel. Hvis du ikke ser en fane kalt Utvikler på båndet ditt, start med å aktivere Utvikler-fanen .
Etter at Utvikler-fanen er gjort synlig, vil båndet ditt se slik ut:
Skrive VBA-makroen din
- Åpne Excel-filen.
- Fra båndet trykker du på Utvikler.
- Trykk nå på Visual Basic-knappen (alternativt, trykk Alt+F11).
- GÅ til Module1 og lim inn følgende kode:
Sub Write_Macro()
'This code creates a Macro named Write_Macro
Dim MySheet As New Worksheet
Dim MyTable As Range
' Create a worksheet programatically and call it TEST
Set MySheet = ThisWorkbook.Sheets.Add(After:=Sheets(Sheets.Count))
MySheet.Name = "TEST"
'Copy the table from Sheet1 into TEST worksheet
Set MyTable = Sheet1.Range("A1:C11")
With MyTable
.Copy Sheets("TEST").Range("A1")
End With
End Sub
- Lukk VBA Editor.
- Tilbake i Excel, trykk Utvikler.
- Trykk nå på Makro og se på listen over makroer i arbeidsboken din. Du vil legge merke til Write_Macro-oppføringen, som vi bare skriver på egen hånd.
- Lagre regnearket som en .xslm (Macro-aktivert Excel-fil)
Kjøre makroen
Det er veldig enkelt å kjøre makroen: Fra makrodialogen vist ovenfor, marker Write_Macro-oppføringen og trykk Kjør.
Aktiverer VBA-sikkerhetstillatelser
I Microsoft Office er makroer deaktivert som standard for å unngå å kjøre skadelig kode. Hvis du vil kjøre makroene dine, må du tillate det. Utfør dette valgfrie trinnet i tilfelle du har mottatt en feilmelding når du kjører en av de to makroene vi har opprettet ovenfor.
- Hit Developer in the Ribbon.
- Velg Makrosikkerhet .
- Velg alternativet Deaktiver alle makroer med varsling .
- Trykk OK.
Merk: Deaktiver alle makroer med varsling er den anbefalte sikkerhetsinnstillingen for Excel-arbeidsbøker som inneholder makroer. Det fungerer som følgende: når en bruker åpner en slik arbeidsbok, legger Excel ut et "MACROS has been Disabled"-varsel rett utenfor formellinjen. Det er deretter opp til brukerens avgjørelse å aktivere makroene i arbeidsboken.
Avslutter
I dagens korte veiledning lærte vi hvordan du setter inn makroer i Office 365 Excel enten ved å registrere dem eller skrive dem ved å bruke Visual Basic for Applications direkte.
Dette er bare et starttrinn for nybegynnere for å bli kjent med Excel-utvikling. Lesere som trenger spesifikke løsninger, vennligst send oss en forespørsel via kontaktsiden .