Ibland är den bästa vägen för att ange kod för Excel 2016 den mest direkta. Att ange VBA-kod direkt innebär … ja, att ange koden direkt. Med andra ord, du skriver koden med hjälp av ditt tangentbord. Att skriva in och redigera text i en VBA-modul fungerar som du kan förvänta dig. Du kan markera, kopiera, klippa ut, klistra in och göra andra saker i texten.
Använd Tab-tangenten för att dra in några av raderna för att göra din kod lättare att läsa. Indrag är inte nödvändigt, men det är en bra vana att skaffa sig.
En enda rad med VBA-kod kan vara så lång som du behöver den. Däremot kanske du vill använda radfortsättningstecken för att bryta upp långa kodrader. Om du vill fortsätta en enskild rad med kod (även känd som en sats) från en rad till nästa, avslutar du den första raden med ett mellanslag följt av ett understreck (_). Fortsätt sedan uttalandet på nästa rad. Och glöm inte utrymmet. Ett understreck som inte föregås av ett mellanslag kommer inte att göra jobbet.
Här är ett exempel på ett enskilt uttalande uppdelat i tre rader:
Selection.Sort Key1:=Range(“A1”), _
Order1:=xlStigande, Header:=xlGuess, _
Orientering:=xlTopToBottom
Det här uttalandet skulle fungera på exakt samma sätt om det skrevs in på en enda rad (utan fortsättningstecken). Observera att den andra och tredje raden i detta uttalande är indragna. Indrag är valfritt, men det hjälper till att förtydliga det faktum att dessa rader inte är separata påståenden.
De vitbelagda ingenjörerna som designade VBE förutsåg att människor skulle göra misstag. Därför har VBE flera nivåer av ångra och gör om. Om du raderade ett påstående som du inte borde ha, klicka på knappen Ångra i verktygsfältet (eller tryck på Ctrl+Z) tills påståendet dyker upp igen. När du har ångrat kan du använda knappen Gör om för att utföra de ändringar du har ångrat.
Är du redo att ange en real-live-kod? Prova följande steg:
Skapa en ny arbetsbok i Excel.
Tryck på Alt+F11 för att aktivera VBE.
Klicka på den nya arbetsbokens namn i projektfönstret.
Välj Infoga → Modul för att infoga en VBA-modul i projektet.
Skriv in följande kod i modulen:
Sub GuessName()
Msg = "Är ditt namn " & Application.UserName & "?"
Ans = MsgBox(Msg, vbYesNo)
Om Ans = vbNo Då MsgBox "Åh, strunt i det."
Om Ans = vbYes Då MsgBox "Jag måste vara synsk!"
Avsluta Sub
Placera markören var som helst i texten du skrev och tryck på F5 för att utföra proceduren.
F5 är en genväg för kommandot Kör → Kör Sub/UserForm. Om du skrev in koden korrekt, kör Excel proceduren och du kan svara på den enkla dialogrutan. Kom ihåg att texten i dialogrutan kommer att vara annorlunda.

Proceduren GuessName visar denna dialogruta.
När du anger koden som listas i steg 5 kanske du märker att VBE gör vissa justeringar av texten du anger. Till exempel, efter att du skrivit undersatsen, infogar VBE automatiskt undersatsen End. Och om du utelämnar utrymmet före eller efter ett likhetstecken, infogar VBE utrymmet åt dig. Dessutom ändrar VBE färgen och versaler för viss text. Det här är helt normalt. Det är bara VBE:s sätt att hålla saker snyggt och läsbart.
Om du följde de föregående stegen skrev du bara en VBA Sub-procedur, även känd som ett makro. När du trycker på F5 kör Excel koden och följer instruktionerna. Med andra ord, Excel utvärderar varje påstående och gör vad du sa till det att göra. (Låt inte denna nyfunna kraft gå åt ditt huvud.) Du kan köra det här makrot hur många gånger som helst – även om det tenderar att förlora sin tilltalande efter några dussin gånger.
Detta enkla makro använder följande begrepp:
-
Definiera en underprocedur (första raden)
-
Tilldela värden till variabler (Msg och Ans)
-
Sammanfoga (sammanfoga) en sträng (med operatorn &)
-
Använda en inbyggd VBA-funktion (MsgBox)
-
Använda inbyggda VBA-konstanter (vbYesNo, vbNo och vbYes)
-
Använda en If-Then-konstruktion (två gånger)
-
Avsluta en underordnad procedur (sista raden)
Inte illa för en nybörjare, va?