Noen ganger er den beste ruten for å skrive inn kode for Excel 2016 den mest direkte. Å skrive inn VBA-kode innebærer direkte … vel, å skrive inn koden direkte. Med andre ord, du skriver inn koden ved å bruke tastaturet. Å legge inn og redigere tekst i en VBA-modul fungerer som du kanskje forventer. Du kan velge, kopiere, klippe ut, lime inn og gjøre andre ting med teksten.
Bruk Tab-tasten til å rykke inn noen av linjene for å gjøre koden lettere å lese. Innrykk er ikke nødvendig, men det er en god vane å tilegne seg.
En enkelt linje med VBA-kode kan være så lang som du trenger den. Det kan imidlertid være lurt å bruke linjefortsettelsestegnene for å dele opp lange kodelinjer. For å fortsette en enkelt linje med kode (også kjent som en setning) fra en linje til den neste, avslutter du den første linjen med et mellomrom etterfulgt av et understrek (_). Fortsett deretter utsagnet på neste linje. Og ikke glem plassen. Et understrekingstegn som ikke er innledet med et mellomrom vil ikke gjøre jobben.
Her er et eksempel på en enkelt setning delt inn i tre linjer:
Utvalg.Sorteringsnøkkel1:=Rekkevidde(“A1”), _
Order1:=xlAscending, Header:=xlGuess, _
Orientering:=xlTopToBottom
Denne setningen ville fungere nøyaktig på samme måte hvis den ble skrevet inn på en enkelt linje (uten linjefortsettelsestegn). Legg merke til at den andre og tredje linjen i denne uttalelsen er rykket inn. Innrykk er valgfritt, men det bidrar til å klargjøre det faktum at disse linjene ikke er separate utsagn.
De hvitbelagte ingeniørene som designet VBE regnet med at folk ville gjøre feil. Derfor har VBE flere nivåer for å angre og gjøre om. Hvis du slettet et utsagn du ikke burde ha, klikker du på Angre-knappen på verktøylinjen (eller trykker på Ctrl+Z) til utsagnet dukker opp igjen. Etter at du har angret, kan du bruke Gjenta-knappen for å utføre endringene du har angret.
Er du klar til å skrive inn en ekte kode? Prøv følgende trinn:
Opprett en ny arbeidsbok i Excel.
Trykk Alt+F11 for å aktivere VBE.
Klikk på den nye arbeidsbokens navn i prosjektvinduet.
Velg Sett inn → Modul for å sette inn en VBA-modul i prosjektet.
Skriv inn følgende kode i modulen:
Sub GuessName()
Msg = "Er navnet ditt " & Application.UserName & "?"
Ans = MsgBox(Msg, vbYesNo)
Hvis Ans = vbNo Da MsgBox "Å, bry deg ikke."
Hvis Ans = vbYes Da MsgBox "Jeg må være synsk!"
End Sub
Plasser markøren hvor som helst i teksten du skrev inn og trykk F5 for å utføre prosedyren.
F5 er en snarvei for Kjør → Kjør Sub/UserForm-kommandoen. Hvis du skrev inn koden riktig, utfører Excel prosedyren, og du kan svare på den enkle dialogboksen. Husk at teksten i dialogboksen vil være annerledes.
Gjettnavn-prosedyren viser denne dialogboksen.
Når du skriver inn koden som er oppført i trinn 5, vil du kanskje legge merke til at VBE gjør noen justeringer i teksten du skriver inn. For eksempel, etter at du har skrevet undersetningen, setter VBE automatisk inn End Sub-setningen. Og hvis du utelater mellomrommet før eller etter et likhetstegn, setter VBE inn mellomrommet for deg. VBE endrer også fargen og bruken av store bokstaver på tekst. Alt dette er helt normalt. Det er bare VBEs måte å holde ting ryddig og lesbart.
Hvis du fulgte de foregående trinnene, skrev du nettopp en VBA Sub-prosedyre, også kjent som en makro. Når du trykker F5, kjører Excel koden og følger instruksjonene. Med andre ord, Excel evaluerer hver påstand og gjør det du har bedt den om å gjøre. (Ikke la denne nyvunne kraften gå til hodet på deg.) Du kan kjøre denne makroen et hvilket som helst antall ganger – selv om den har en tendens til å miste appellen etter et par dusin ganger.
For ordens skyld bruker denne enkle makroen følgende konsepter:
-
Definere en underprosedyre (den første linjen)
-
Tilordne verdier til variabler (Msg og Ans)
-
Sammenknytte (føye sammen) en streng (ved hjelp av &-operatoren)
-
Bruke en innebygd VBA-funksjon (MsgBox)
-
Bruke innebygde VBA-konstanter (vbYesNo, vbNo og vbYes)
-
Bruke en If-Then-konstruksjon (to ganger)
-
Avslutte en underprosedyre (siste linjen)
Ikke verst for en nybegynner, ikke sant?