Du måste veta hur man kör VBA Sub-procedurer i Excel 2016. Detta är viktigt eftersom en Sub-procedur är värdelös om du inte vet hur man kör den. Förresten, att köra en Sub-procedur betyder samma sak som att köra eller anropa en Sub-procedur. Du kan använda vilken terminologi du vill.
Du kan köra en VBA Sub på många sätt; det är en anledning till att du kan göra så många användbara saker med Sub-procedurer. Här är en uttömmande lista över sätten att utföra en underprocedur:
-
Med kommandot Kör → Kör Sub/UserForm (i VBE). Excel exekverar underproceduren där markören är placerad. Detta menykommando har två alternativ: F5-tangenten och knappen Kör Sub/UserForm på standardverktygsfältet i VBE. Dessa metoder fungerar inte om proceduren kräver ett eller flera argument.
-
Från Excels Macro-dialogruta. Du öppnar den här rutan genom att välja Utvecklare → Kod → Makron eller genom att välja Visa → Makron → Makron. Eller kringgå menyfliksområdet och tryck bara på Alt+F8-genvägstangenten. När dialogrutan Makro visas, välj den underprocedur du vill ha och klicka på Kör. Den här dialogrutan listar endast de procedurer som inte kräver ett argument.
-
Använda Ctrl+tangenten (eller Ctrl+Skift+tangenten) genväg tilldelad underproceduren (förutsatt att du tilldelat en).
-
Klicka på en knapp eller en form på ett kalkylblad. Knappen eller formen måste ha en underprocedur tilldelad – vilket är mycket enkelt att göra.
-
Från en annan Sub-procedur som du skriver.
-
Från en knapp som du har lagt till i verktygsfältet Snabbåtkomst.
-
Från ett anpassat objekt som du har lagt till i menyfliksområdet.
-
När en händelse inträffar. Dessa händelser inkluderar att öppna arbetsboken, stänga arbetsboken, spara arbetsboken, göra en ändring i en cell, aktivera ett ark och andra saker.
-
Från fönstret Omedelbart i VBE. Skriv bara in namnet på underproceduren och tryck på Enter.
Nu måste du ange en underprocedur i en VBA-modul:
Börja med en ny arbetsbok.
Tryck på Alt+F11 för att aktivera VBE.
Välj arbetsboken i projektfönstret.
Välj Infoga → Modul för att infoga en ny modul.
Ange följande i modulen:
Sub ShowCubeRoot()
Num = InputBox(”Ange ett positivt tal”)
MsgBox Num ^ (1/3) & " är kubroten."
Avsluta Sub
Denna procedur ber användaren om ett nummer och visar sedan numrets kubrot i en meddelanderuta. Detta är vad som händer när du utför den här proceduren.
Använder den inbyggda VBA InputBox-funktionen för att få ett nummer.
ShowCubeRoot är förresten inget exempel på ett bra makro. Den letar inte efter fel, så den misslyckas lätt.
Visar kubroten av ett tal via MsgBox-funktionen.
För att se varför det inte är ett bra makro, försök att klicka på knappen Avbryt i inmatningsrutan eller ange ett negativt tal. Båda åtgärderna resulterar i ett felmeddelande.