Sådan opretter du en VBA-makro eller et script i Excel
Microsoft Excel gør det muligt for brugere at automatisere funktioner og kommandoer ved hjælp af makroer og Visual Basic for Applications ( VBA ) scripting. VBA er det programmeringssprog, Excel(VBA is the programming language Excel) bruger til at lave makroer. Det vil også udføre automatiserede kommandoer baseret på specifikke forhold.
Makroer er en række forudindspillede kommandoer. De kører automatisk, når en bestemt kommando gives. Hvis du har opgaver i Microsoft Excel , som du gentagne gange udfører, såsom regnskab, projektstyring eller løn, kan automatisering af disse processer spare en masse tid.
Under fanen Udvikler(Developer) på båndet(Ribbon) i Excel kan brugere optage museklik og tastetryk (makroer). Nogle funktioner kræver dog mere dybdegående scripting, end makroer kan give. Det er her, VBA- scripting bliver en kæmpe fordel. Det giver brugerne mulighed for at oprette mere komplekse scripts.
I denne artikel vil vi forklare følgende:
- Aktivering af scripts og makroer
- Sådan opretter du en makro i Excel
- Specifikt eksempel på en makro
- Lær mere om VBA
- Opret en knap(Button) for at komme i gang med VBA
- Tilføj kode(Add Code) for at give knappen funktionalitet(Button Functionality)
- Virkede det?
Aktivering af scripts og makroer(Enabling Scripts & Macros)
Før du kan oprette makroer eller VBA- scripts i Excel , skal du aktivere fanen Udvikler(Developer ) på båndmenuen(Ribbon) . Fanen Udvikler(Developer) er ikke aktiveret som standard. For at aktivere det:
- Åbn et Excel-regneark.
- Klik på Filer(File ) > Indstillinger( Options ) > Tilpas bånd.( Customize Ribbon.)
- Sæt et flueben i feltet ud for Udvikler(Developer) .
- Klik på fanen Udvikler(Developer) i båndmenuen(Ribbon) .
- Klik derefter på Makrosikkerhed(Macro Security) og marker afkrydsningsfeltet ud for Aktiver alle makroer (anbefales ikke; potentielt farlig kode kan køre). (Enable all macros (not recommended; potentially dangerous code can run). )
- Klik derefter på OK.
Årsagen til, at makroer ikke er slået til som standard og kommer med en advarsel, er, at de er computerkode, der kan indeholde malware.
Sørg(Make) for, at dokumentet er fra en pålidelig kilde, hvis du arbejder på et delt projekt i Excel og andre Microsoft - programmer.
Når du er færdig med at bruge dine scripts og makroer, skal du deaktivere alle makroer for at forhindre potentielt skadelig kode i at inficere andre dokumenter.
Opret en makro i Excel(Create a Macro in Excel)
Alle de handlinger, du foretager i Excel , mens du optager en makro, føjes til den.
- Fra fanen Udvikler skal du klikke på Optag makro(Record Macro) .
- Indtast et makronavn(Macro name) , en genvejstast(Shortcut key) og en beskrivelse. (Description. )Makronavne(Macro) skal begynde med et bogstav og må ikke have mellemrum. Genvejstasten skal være et bogstav.
Bestem, hvor du vil gemme makroen, ud fra følgende muligheder:
- Personlig makroprojektmappe(Personal Macro Workbook) : Dette vil oprette et skjult Excel- dokument med gemte makroer, der skal bruges med alle Excel- dokumenter.
- Ny projektmappe(New Workbook) : Opretter et nyt Excel- dokument til at gemme de oprettede makroer.
- Denne projektmappe(This Workbook) : Dette vil kun blive anvendt på det dokument, du i øjeblikket redigerer.
Klik på OK(OK) , når du er færdig .
- Kør(Run) gennem de handlinger, du vil automatisere. Klik på Stop optagelse(Stop Recording) , når du er færdig .
- Når du vil have adgang til din makro, skal du bruge den tastaturgenvej, du gav den.
Specifikt eksempel på en makro(Specific Example Of a Macro)
Lad os starte med et simpelt regneark til kunder, og hvor meget de skylder. Vi vil begynde med at oprette en makro for at formatere regnearket.
Lad os antage, at du beslutter dig for, at alle regneark skal bruge et andet format, såsom at sætte for- og efternavn i separate kolonner.
Du kan ændre dette manuelt. Eller du kan oprette et program ved hjælp af en makro for automatisk at formatere det korrekt for dig.
Optag makroen(Record The Macro)
- Klik på Optag makro(Record Macro) . Lad os kalde det Format_Customer_Data og klik på OK .
- For at få den formatering, vi ønsker, vil vi ændre den første kolonnes navn til Fornavn(First Name) .
- Indsæt derefter en kolonne ved siden af A og kald den Efternavn(Last Name) .
- Fremhæv(Highlight) alle navnene i den første kolonne (som stadig inkluderer for- og efternavn), og klik på Data fra båndnavigationen.
- Klik på Tekst til kolonner(Text to Columns) .
- Marker Afgrænset(Delimited) > Næste(Next ) > Adskil med mellemrum(Separate by Space) > Næste(Next ) > Afslut(Finish) . Se skærmbillede nedenfor, og hvordan for- og efternavne blev adskilt af processen ovenfor.
- For at formatere feltet Forfalden saldo(Balance Due) skal du fremhæve beløbene. Klik(Click) på Hjem(Home ) > Betinget formatering(Conditional Formatting) > Fremhæv celleregler(Highlight Cell Rules) > Større end(Greater Than ) > 0 .
Dette vil fremhæve de celler, der har en forfalden saldo. Vi tilføjede et par kunder uden saldo for yderligere at illustrere formateringen.
- Gå tilbage til Udvikler(Developer ) , og klik på Stop optagelse(Stop Recording) .
Anvend makroen(Apply The Macro)
Lad os starte med det originale regneark, før vi optog makroen for at formatere den korrekt. Klik(Click) på Makroer(Macros) , vælg og kør(Run) den makro, du lige har oprettet.
Når du kører en makro, er al formatering gjort for dig. Denne makro, vi lige har oprettet, er gemt i Visual Basic Editor .
Brugere kan køre makroer på flere forskellige måder. Læs Kør en makro(Run a macro) for at få mere at vide.
Lær mere om VBA(Learn More About VBA)
For at lære om VBA, klik på Makro(Macro) fra fanen Udvikler(Developer) . Find en, du har oprettet, og klik på Rediger.(Edit.)
Koden, du ser i boksen ovenfor, er den, der blev oprettet, da du optog din makro.
Det er også det, du vil køre, når du vil formatere andre kundebetalingsregneark på samme måde.
Opret en knap for at komme i gang med VBA(Create a Button To Get Started With VBA)
Lad os oprette en valutaomregner ved at bruge det samme regneark ovenfor med kunder og hvor meget de skylder.
- For at indsætte et knapelement skal du navigere til fanen Udvikler(Developer ) .
- Vælg ActiveX Command Button fra rullemenuen ved siden af Indsæt(Insert) i sektionen Kontrolelementer (Controls).
- Træk(Drag) knappen hvor som helst på regnearket, så du nemt kan få adgang til det og ændre det senere, hvis du vil.
- For at vedhæfte koden skal du højreklikke på knappen og vælge Egenskaber(Properties) . Vi beholder navnet(Name) som CommandButton og billedteksten(Caption ) til at konvertere( Convert ) (dette er knapteksten).
Tilføj kode for at give knappen funktionalitet(Add Code To Give The Button Functionality)
VBA -kodning finder ikke sted i Excel -grænsefladen. Det gøres i et separat miljø.
- Gå til fanen Udvikler(Developer) og sørg for, at Designtilstand(Design Mode) er aktiv.
- For at få adgang til koden for den knap, vi lige har oprettet, skal du højreklikke på den og vælge Vis kode(View Code) .
- Når du ser på koden i skærmbilledet nedenfor, skal du bemærke, at begyndelsen ( Privat Sub(Private Sub) ) og slutningen ( End Sub ) af koden allerede er der.
- Koden nedenfor vil drive valutaomregningsproceduren.
ActiveCell.Value = (ActiveCell * 1.28)
Vores formål i dette afsnit er at konvertere valutaen i vores regneark. Scriptet ovenfor afspejler vekselkursen fra GBP til USD . Den nye værdi af en celle vil være, hvad der i øjeblikket er der ganget med 1,28.
Skærmbilledet nedenfor viser dig, hvordan koden ser ud i VBA - vinduet, efter du har indsat den.
- Gå til Fil(File ) i den øverste navigation, og klik på Luk og Vend tilbage til Microsoft Excel(click on Close and Return to Microsoft Excel) for at vende tilbage til Excel -hovedgrænsefladen.
Virkede det?(Did It Work?)
Før du kan teste din kode, skal du først deaktivere Design Mode (klik på den) for at undgå yderligere ændringer og give knappen funktionalitet.
- Indtast(Type) et vilkårligt tal i dit regneark, og klik derefter på knappen Konverter(Convert) . Hvis værdien af dit nummer stiger med cirka en fjerdedel, virkede det.
I dette eksempel satte jeg tallet 4 i en celle. Efter at have klikket på Konverter(Convert) ændrede tallet sig til 5.12. Da 4 gange 1.28 er 5.12, blev koden udført korrekt.
Nu hvor du forstår, hvordan du opretter en makro eller et script i Excel , kan du bruge dem til at automatisere en lang række handlinger i Excel .
Related posts
En avanceret VBA-vejledning til MS Excel
5 Google Sheets Script-funktioner, du skal kende
Sådan slettes tomme linjer i Excel
Sådan bruger du Excels Tal Cells-funktion
Sådan indsætter du et Excel-regneark i et Word-dokument
Sådan flettes data i flere Excel-filer
Google Sheets vs Microsoft Excel – Hvad er forskellene?
Sådan rettes en række i Excel
Hvorfor du skal bruge navngivne områder i Excel
Sådan opretter du flere linkede rullelister i Excel
Sådan bruges PMT-funktionen i Excel
Grundlæggende én-kolonne og multi-kolonne datasortering i Excel-regneark
3 måder at opdele en celle i Excel
Sådan bruger du absolutte referencer i Excel
Den bedste VBA-guide (for begyndere), du nogensinde har brug for
Hvad er et VBA-array i Excel, og hvordan programmeres et
Sådan indsætter du CSV eller TSV i et Excel-regneark
Brug dynamiske områdenavne i Excel til fleksible dropdowns
Sådan flyttes kolonner i Excel
4 måder at bruge et flueben i Excel