VBA-variabler, datatyper og konstanter i Excel
⚡ Smart oppsummering
VBA-variabler, datatyper og konstanter i Excel lagrer og merker verdiene et program arbeider med. Denne siden forklarer navngivningsregler for variabler, implisitt og eksplisitt deklarasjon med Dim, de numeriske og ikke-numeriske datatypene, og hvordan du deklarerer en konstant med Const.
Variabler brukes i nesten alle dataprogrammer og VBA er ikke annerledes. Det er en god praksis å deklarere en variabel i begynnelsen av prosedyren. Det er ikke nødvendig, men det hjelper å identifisere innholdet (tekst, data, tall osv.)
VBA-variabler
Variabler er spesifikke verdier som er lagret i et datamaskinminne eller et lagringssystem. Later, kan du bruke den verdien i kode og kjøre. Datamaskinen vil hente den verdien fra systemet og vises i utdataene. Hver av Excel VBA-variabeltypene må gis et navn.
For å navngi variabelen i VBA, må du følge følgende regler.
- Det må være mindre enn 255 tegn
- Ingen mellomrom er tillatt
- Det må ikke begynne med et tall
- Periode er ikke tillatt
Her er noen eksempler på gyldige og ugyldige navn for variabler i VBA.
| Min_klokke | Min.klokke |
| Ny bil 1 | 1_NewCar (begynner ikke med nummer) |
| Ansatt ID | Ansatt-ID (plass ikke tillatt) |
In VBA, må vi deklarere variablene før vi bruker dem ved å tildele navn og datatype.
I VBA er variabler enten deklarert implisitt eller eksplisitt.
- Implisitt: Nedenfor er et eksempel på en variabel deklarert implisitt.
- label=guru99
- volum=4
- eksplisitt: Nedenfor er et eksempel på variabel deklarert eksplisitt. Du kan bruke "Dim" nøkkelord i syntaks
- Dim Tall som heltall
- Dim passord som streng
VBA-variabel er ikke annerledes enn andre programmeringsspråk. For å deklarere en variabel i VBA bruker du nøkkelordet "Dim."
Syntaks for VBA-variabel,
For å erklære en variabel i VBA, skriv Dim etterfulgt av et navn:
Sub Exercise () Dim <name> End Sub
Før vi utfører variablene må vi registrere en makro i Excel. For å ta opp en makro gjør følgende –
Trinn 1): Ta opp makroen 1
Trinn 2) : Stopp makro 1
Trinn 3): Åpne Macro editor, skriv inn koden for variabel i Macro1
Trinn 4): Kjør koden for Macro 1
Eksempel, for VBA-variabel
Sub Macro1() Dim Num As Integer Num = 99 MsgBox " Guru " & Num End Sub
Når du kjører denne koden, vil du få følgende utdata i arket ditt.
Excel VBA-datatyper
Datamaskinen kan ikke skille mellom tallene (1,2,3..) og strenger (a,b,c,..). For å gjøre denne differensieringen bruker vi datatyper.
VBA-datatyper kan deles inn i to typer
- Numeriske datatyper
| typen | Oppbevaring | Utvalg av verdier |
|---|---|---|
| Byte | 1 bytes | 0 til 255 |
| Heltall | 2 bytes | -32,768 til 32,767 |
| Lang | 4 bytes | -2,147,483,648 til 2,147,483,648 |
| enslig | 4 bytes | -3.402823E+38 til -1.401298E-45 for negative verdier 1.401298E-45 til 3.402823E+38 for positive verdier. |
| Double | 8 bytes | -1.79769313486232e+308 til -4.94065645841247E-324 for negative verdier 4.94065645841247E-324 til 1.79769313486232e+308 for positive verdier. |
| valuta | 8 bytes | -922,337,203,685,477.5808 til 922,337,203,685,477.5807 |
| Desimal | 12 bytes | +/- 79,228,162,514,264,337,593,543,950,335 hvis ingen desimal er, bruk +/- 7.9228162514264337593543950335 (28 desimaler) |
- Ikke-numeriske datatyper
| Data-type | Byte brukt | Utvalg av verdier |
|---|---|---|
| String (fast lengde) | Lengde på streng | 1 til 65,400 tegn |
| streng (variabel lengde) | Lengde + 10 byte | 0 til 2 milliarder tegn |
| boolean | 2 bytes | Sant eller usant |
| Dato | 8 bytes | 1. januar 100 til 31. desember 9999 |
| Objekt | 4 bytes | Ethvert innebygd objekt |
| Variant (numerisk) | 16 bytes | Enhver verdi så stor som Double |
| Variant (tekst) | Lengde+22 byte | Samme som streng med variabel lengde |
I VBA, hvis datatypen ikke er spesifisert, vil den automatisk erklære variabelen som en variant.
La oss se et eksempel på hvordan du deklarerer variabler i VBA. I dette eksemplet vil vi deklarere tre typer variabler streng, sammenføyningsdato og valuta.
Trinn 1) Som i den forrige opplæringen vil vi sette inn kommandoknappen1 i vår Excel ark.
Trinn 2) I neste trinn høyreklikker du på knappen og velger Vis kode. Det vil åpne kodevinduet som vist nedenfor.
Trinn 3) I dette trinnet
- Lagre filen ved å klikke på lagre-knappen
- Klikk deretter på Excel-ikonet
i samme vindu for å returnere Excel-arket.
- Du kan se at designmodusen er "på" uthevet i grønt
Trinn 4) Slå av designmodus før du klikker på kommandoknappen
Trinn 5) Etter at du har slått av designmodusen, klikker du på kommandoknapp1. Den vil vise følgende variabel som en utgang for området vi erklærte i kode.
- Navn
- Tilmeldingsdato
- Inntekt i valuta
Konstant i VBA
Konstant er som en variabel, men du kan ikke endre den. For å deklarere VBA-konstanter kan du bruke nøkkelord Konst.
Det er to typer konstanter,
- Innebygd eller iboende levert av applikasjonen.
- Symbolsk eller brukerdefinert
Du kan enten spesifisere omfanget som privat som standard eller offentlig. For eksempel,
Offentlige konstdager i år=365
Privatkonst Arbeidsdager=250
Last ned Excel som inneholder koden ovenfor
Last ned Excel-filen ovenfor Code
Variabel omfang og eksplisitt opsjon
Hvor en variabel deklareres avgjør hvor den kan brukes, og én liten innstilling øverst i en modul forhindrer de fleste typerping feil. Å forstå begge deler holder et voksende program pålitelig.
| søkeord | Omfang | Lifetime |
|---|---|---|
| Dim (inne i en sub) | Bare prosedyren den er deklarert i | Tilbakestilles hver gang prosedyren kjøres |
| Statisk | Bare prosedyren, men verdien beholdes | Huskes mellom samtaler |
| Privat (øverst på modulen) | Hver prosedyre i den modulen | Lever mens arbeidsboken er åpen |
| Offentlig (øverst på modulen) | Hver modul i prosjektet | Lever mens arbeidsboken er åpen |
💡 Tips: typen Alternativ Eksplisitt som den første linjen i hver modul. Den tvinger alle variabler til å bli deklarert med Dim, slik at et feilstavet navn fanges opp under kompilering i stedet for at en ny, tom variant opprettes i stillhet.







