Hvordan få VBA-kode i en modul med kode Windows

En av hvordan du kan få VBA-kode i en VBA-modul er å bruke Excel makro opptaker for å spille inn dine handlinger og konvertere dem til VBA-kode. Imidlertid kan ikke alle oppgaver settes til VBA ved å spille inn en makro. Du kan også skrive inn koden direkte eller kopiere koden fra en modul og lime den inn i en annen.

Skrive inn og redigere tekst i et VBA-modul som fungerer som du kanskje forventer. Du kan velge, kopiere, klippe, lime, og gjøre andre ting i teksten.

En enkelt linje med VBA-kode kan være så lenge du vil. Imidlertid kan det være lurt å bruke line-fortsettelsestegnet
å bryte opp lange linjer med kode. For å fortsette en eneste linje med kode (også kjent som en uttalelse
) fra en linje til den neste, avslutter den første linjen med et mellomrom etterfulgt av en understrek (_). Deretter fortsetter uttalelsen på neste linje. Her er et eksempel på en enkelt setning delt inn i tre linjer:
Selection.Sort Key1: = Range ( "A1"), _Order1: = xlAscending, Header: = xlGuess, _Orientation: = xlTopToBottom

Denne uttalelsen vil utføre samme måte hvis det ble lagt inn i en enkelt linje (uten linjefortsettelsestegn).

VBE har flere nivåer av angre og gjøre. Hvis du har slettet en erklæring om at du ikke bør ha, bruke Angre-knappen på verktøylinjen (eller trykk Ctrl + Z) til uttalelsen vises igjen. Etter angre, kan du bruke gjenopprett-knappen for å utføre endringene du har ugjort.

Klar til å angi noen ekte, levende koden? Prøv følgende fremgangsmåte:

Opprett en ny arbeidsbok i Excel

Trykk Alt + F11 for å aktivere VBE

Klikk på den nye arbeidsboken navn i.. . prosjektvinduet

Velg Sett → Module for å sette inn en VBA-modul i prosjektet

Skriv inn følgende kode i modulen.
Sub GuessName () Dim Msg som String Dim Ans så lenge Msg = "Er ditt navn" & Application.UserName & "?" Ans = MsgBox (MSG, vbYesNo) Hvis Ans = vbNo Deretter MsgBox "Oh, never mind." Hvis Ans = vbYes Så MsgBox "Jeg må være synsk!" End Sub

Kontroller at markøren er plassert hvor som helst i teksten du skrev inn, og trykk deretter F5 for å utføre inngrepet.

F5 er en snarvei for Run → Kjør Sub /Userform-kommandoen.

Når du taster inn koden som er oppført i trinn 5, kan det hende at VBE gjør noen justeringer i teksten du skriver. For eksempel, når du skriver under uttalelse, VBE setter automatisk End Sub uttalelse. Og hvis du utelater plass før eller etter et likhetstegn, VBE setter plassen for deg. Dessuten endrer VBE farge og kapitalisering av tekst. Disse endringene er VBE måte å holde ting ryddig og lesbar.

Hvis du fulgte de forrige trinnene, du nettopp opprettet en VBA Sub prosedyre, også kjent som en makro. Når du trykker på F5, utfører Excel koden og følger instruksjonene. Med andre ord, evaluerer Excel hver setning og gjør det du fortalte det til å gjøre. Du kan utføre denne makroen en rekke ganger - selv om det har en tendens til å miste sin appell etter et par dusin henrettelser

Denne enkle makro bruker følgende begreper:

Definere en Sub prosedyre (den første. linje)

Erklærte variabler (Dim setninger)

Tilordne verdier til variabler (MSG og Ans)

sette sammen (bli med) en string (ved hjelp av & operatør)

Ved hjelp av en innebygd VBA-funksjon (MsgBox)

Ved hjelp av innebygd VBA konstanter (vbYesNo, vbNo, og vbYes)

Ved hjelp av en If-Then konstruere (to ganger)

Avslutte Sub prosedyre (siste linje)

Som nevnt du kan kopiere og lime inn koden i en VBA-modul. For eksempel kan en Sub eller funksjon prosedyre som du skriver for ett prosjekt også være nyttig i et annet prosjekt. I stedet for å kaste bort tid reentering koden, kan du aktivere modulen og bruke normal kopi-og-lim-prosedyrer (Ctrl + C for å kopiere og Ctrl + V for å lime inn). Når du har limt inn koden i en VBA-modul, kan du endre koden som er nødvendig.