VBA Int / Integer Data Type (Dim Variable)

Heltal (Int) Variabel Type

VBA Int datatype bruges til at gemme hele tal (ingen decimalværdier). Men som vi vil se nedenfor, skal heltalsværdierne falde inden for intervallet -32768 til 32768.

For at deklarere en Int -variabel bruger du Dim Statement (forkortelse for Dimension):

1 Dim intA som heltal

For derefter at tildele en værdi til en variabel skal du blot bruge lighedstegnet:

1 intA = 30000

At sætte dette i en procedure ser sådan ud:

12345678 Sub IntExample ()'erklærer heltaletDim intA som heltal'udfyld heltaletintA = 30000'vis meddelelsesboksenMsgBox intAAfslut Sub

Hvis du kører koden ovenfor, vises følgende meddelelsesboks.

Lang variabel type

Som nævnt ovenfor kan Int -variabler kun gemme værdier mellem -32768 til 32768. Hvis du forsøger at tildele en værdi uden for dette område til en Int -variabel, får du en fejl:

Når du klikker på de-bug, vil koden bryde ved 'Udfyld heltalelinjen som et helt tal ikke kan gemme et tal så højt som 50000.

I stedet kan du erklære en variabel med Lang datatype:

1 Dim longA som Long

Lange variabler kan gemme meget lange datatyper (-2.147.483.648 til 2.147.483.648).

<>

Hvorfor ville du bruge Int -variabler i stedet for lange variabler?

Lange variabler bruger mere hukommelse. For mange år siden var hukommelsen en stor bekymring, når du skrev kode, men computerteknologi er nu meget forbedret, og det er tvivlsomt, at du støder på hukommelsesproblemer forårsaget af lange variabler, når du skriver VBA -kode.

Vi anbefaler altid at bruge lange variabler i stedet for Int -variabler. Vi vil fortsætte denne vejledning med at diskutere Int -variabler, men husk på, at du kan bruge typen Lang variabel i stedet.

Decimalværdier og Int -datatyper

Int -variabler kan ikke gemme decimalværdier. Hvis du passerer et decimaltal et helt tal, afrundes decimaltallet for at fjerne decimalet.

Hvis du skulle køre nedenstående procedure:

12345678 Sub IntExampleB ()'erklærer heltaletDim intA som heltal'udfyld heltaletintA = 3524,12'vis meddelelsesboksenMsgBox intAAfslut Sub

Du får følgende resultat (afrunding nedad):

Denne kode nedenfor:

12345678 Sub IntExampleB ()'erklærer heltaletDim intA som heltal'udfyld heltaletintA = 3524,52'vis meddelelsesboksenMsgBox intAAfslut Sub

Ville returnere følgende meddelelsesboks (afrunding):

Decimal / dobbelt datatype

Hvis du vil gemme en decimal, skal du deklarere en variabel, der giver mulighed for decimaler. Der er 3 datatyper, du kan bruge - Single, Double eller Currency.

1 Dim sngPris som single
1 Dim dblPris som dobbelt
1 Dim curPris som valuta

Enkelt datatypen vil afrunde decimaltegnet lidt anderledes end dobbelt- og valutatypen, så det er at foretrække at bruge dobbelt til enkelt for nøjagtighed. En dobbelt kan have op til 12 decimaler, mens valuta og enkelt kan have op til 4 decimaler.

For yderligere information om disse datatyper, kan du kigge her.

Angiv Int -variabel på modul eller globalt niveau

I de foregående eksempler har vi erklæret Int -variablen inden for en procedure. Variabler, der er angivet med en procedure, kan kun bruges inden for denne procedure.

I stedet kan du deklarere Int -variabler på modulet eller globalt niveau.

Modulniveau

Modulniveau variabler erklæres øverst i kodemodulerne med Svag udmelding.

Disse variabler kan bruges med enhver procedure i det pågældende kodemodul.

Globalt niveau

Globalt niveau variabler erklæres også øverst i kodemodulerne. Men i stedet for at bruge Svag erklæring, brug Offentlig sætning for at angive, at heltalsvariablen er tilgængelig til brug i hele dit VBA -projekt.

1 Offentlig IntA som heltal

Hvis du skulle erklære heltalet på et modulniveau og derefter prøve at bruge det i et andet modul, ville der opstå en fejl.

Men hvis du havde brugt det offentlige søgeord til at deklarere heltalet, ville fejlen ikke opstå, og proceduren ville køre perfekt.

Konverter streng til Int

Der kan være en eller flere tilfælde, hvor du skal konvertere et nummer, der er gemt som en streng, til en heltalværdi.

Du vil bemærke i det umiddelbare vindue, at heltalsværdien går til højre og angiver et tal, mens strengværdien går til venstre - hvilket angiver tekst.

Konverter Int til streng

Omvendt kan du konvertere en heltalsværdi til en streng.

For yderligere information om disse datatyper, kan du kigge her.

Format Heltal gemt som streng

<>

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave