Excel VBA dobbelt datatype

I VBA har vi forskellige typer datatyper, der bruges efter behov. Som helhed bruges heltal-datatype til tal, String-datatypen bruges til alfabeter og tekst, og en lang datatype bruges, når vi skal bruge tal eller tekst uden nogen begrænsning. Tilsvarende har vi en dobbelt datatype, der bruges til decimaltal. Skønt vi kan bruge Single til decimaler, men dette vil kun beholde værdier til 2 point i decimal. Hvis vi vil bruge decimalværdier uden nogen grænse, har vi en dobbelt datatype til dette.

Hvis vi bruger heltal i stedet for dobbelt datatype til decimalværdier, konverterer den decimalværdien til det nærmeste heltal. Og der er også en vis grænse for at bruge dobbelt datatype også. Dobbelt kan rumme negative værdier fra -1.79769313486231E308 til -4.94065645841247E324 og for positive værdier fra 4.94065645841247E-324 til 1.79769313486232E308. Ud over dette kan værdien ikke accepteres.

Sådan bruges VBA dobbelt datatype i Excel?

Nedenfor er de forskellige eksempler til brug af dobbelt datatype i Excel VBA.

Du kan downloade denne VBA dobbelt Excel-skabelon her - VBA dobbelt Excel-skabelon

VBA Double - Eksempel # 1

I dette eksempel vil vi se, hvordan forskellige datatyper såsom heltal og enkelt giver output for enhver decimalværdi, og på den anden side hvordan dobbeltdatatype giver output med den samme decimalværdi. Følg nedenstående trin for dette:

Trin 1: Åbn et modul fra fanen Indsæt menu.

Trin 2: Skriv delproceduren for VBA Double. Vi kan vælge ethvert andet navn til at definere navnet på VBA Double i henhold til vores valg.

Kode:

 Sub VBA_Double () End Sub 

Trin 3: Definer nu en variabel, lad os sige, at den er A som heltal som vist nedenfor.

Kode:

 Sub VBA_Double () Dim A Som heltal End Sub 

Trin 4: Tildel en decimalværdi til den definerede variabel. Lad os sige, at decimalværdien er 1.23456789 som vist nedenfor.

Kode:

 Sub VBA_Double () Dim A som heltal A = 1.23456789 End Sub 

Trin 5: Nu har vi brug for en platform, hvor vi kan se output. Her kan vi bruge Msgbox eller Debug.Print funktion. Vi bruger Msgbox, som er den mest traditionelle måde at gøre på.

Kode:

 Sub VBA_Double () Dim A som heltal A = 1.23456789 MsgBox A End Sub 

Trin 6: Kør det ved at klikke på knappen Afspil eller ved at trykke på F5-tasten.

Vi ser outputmeddelelsesfeltet med værdien "1". Dette betyder, at heltalets datatype har konverteret decimalværdien til det nærmeste hele tal som 1.

Trin 7: Lad os nu ændre datatypen fra heltal til enkelt og se, hvilken enkelt datatype returnerer os.

Kode:

 Sub VBA_Double () Dim A Som enkelt A = 1.23456789 MsgBox A End Sub 

Trin 8: Kør igen koden ved at klikke på knappen Play eller ved at trykke på F5-tasten.

Vi ser, den enkelte datatype har returneret decimalværdien, der er 1 . 234568, hvorimod vi indtastede inputværdien som 1.23456789 .

Dette betyder, at datatypen Enkelt konverterer den indtastede decimalværdi til den nærmeste mulige decimalværdi ved konvertering af sidste ciffernummer til nærmeste værdi, som skal være mindre end 5.

Trin 9: Nu vil vi bruge datatype Dobbelt i stedet for Enkelt og se, hvilket output vi ville få.

Kode:

 Sub VBA_Double () Dim A As Double A = 1.23456789 MsgBox A End Sub 

Trin 10: Kør igen koden ved at klikke på knappen Play eller ved at trykke på F5-tasten.

Vi ser, meddelelsesfeltet har nøjagtigt den samme værdi, som vi fodrede, hvilket betyder, at Double ikke konverterede inputværdien, hvis den falder under dens grænse.

VBA dobbelt - eksempel # 2

I dette eksempel vil vi bruge cellehenvisninger. Og vi vil begynde at arbejde på samme måde, som vi har set i eksempel-1. Til dette har vi nogle data i kolonne A i flere cifre af decimaler.

Følg nedenstående trin:

Trin 1: Skriv underproceduren for VBA Double som vist nedenfor.

Kode:

 Sub VBA_Double2 () End Sub 

Trin 2: Først starter vi med heltal. Så definer en variabel som heltal som vist nedenfor. Dette ville være vores inputvariabel.

Kode:

 Sub VBA_Double2 () Dim A Som heltal End Sub 

Trin 3: Derefter definerer vi igen en variabel som et heltal. Dette er en variabel, hvor vi lagrer output.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som heltal End Sub 

Trin 4: Åbn en For-Next-loop som vist nedenfor. Det er her, vi skriver betingelsen for at hente dataene fra en kolonne til en anden kolonne.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci som heltal til næste en slut Sub 

Trin 5: Vælg området for celler i variabel A. Her er vores data fra celle A1 til A10.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som heltal for A = 1 til 10 Næste A End Sub 

Trin 6: Vælg nu de celleværdier, som vi vil placere. Her er celleværdierne i den første kolonne.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som heltal for A = 1 til 10 deci = Celler (A, 1) .Value Næste A End Sub 

Trin 7: Nu lægger vi de valgte værdier i kolonne 2, som er B i den definerede variabel Deci .

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som heltal for A = 1 til 10 deci = Cells (A, 1) .Value Cells (A, 2) .Value = Deci Next A End Sub 

Trin 8: Kør koden ved at klikke på knappen Afspil eller ved at trykke på F5-tasten.

Som vi havde valgt Heltal-datatypen for outputvariablen Deci, så konverterede den decimaltallene til heltal i hele kolonne B.

Trin 9: Lad os ændre datatypen for Deci, som er outputvariablen fra heltal til enkelt som vist nedenfor.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som enkelt for A = 1 til 10 deci = Cells (A, 1) .Value celler (A, 2) .Value = Deci Næste A End Sub 

Trin 10: Kør koden ved at klikke på knappen Play eller ved at trykke på F5-tasten. Vi vil se, decimaltal fra kolonne A blev konverteret til bedst mulige tættere decimalantal.

Trin 11: Lad os ændre udgangsvariabel datatype fra Enkelt til Dobbelt . Og se, hvad vi får i kolonne B.

Kode:

 Sub VBA_Double2 () Dim A Som heltal Dim Deci Som dobbelt for A = 1 til 10 deci = Cells (A, 1) .Value celler (A, 2) .Value = Deci Næste A End Sub 

Trin 12: Kør igen koden ved at klikke på knappen Afspil eller ved at trykke på F5-tasten. Sådan fungerer VBA Double .

Fordele og ulemper ved VBA Double

  • VBA Double konverterer det samme tal til decimaltal i et specifikt interval.
  • Det er ganske nemt at bruge.
  • Vi kan bruge dobbelt datatype i stedet for heltal eller enkelt på en lignende måde.
  • Det betragter ikke decimaltallet ud over den grænse, som vi har set i ovenstående introduktionsafsnit.

Ting at huske

  • Grænsen for anvendelse af VBA Double til negative værdier er fra -1, 7796969313486231E308 til -4, 94065645841247E324 og for positive værdier er fra 94065645841247E-324 til 1, 79769313486232E308.
  • VBA Double kan indeholde op til 14 cifrede værdier, hvis det er under den ovenfor givne grænse.
  • VBA Double bruger 8 byte systemhukommelse, hver type den bruges.

Anbefalede artikler

Dette er en guide til Excel VBA Double. Her diskuterer vi, hvordan du bruger dobbeltdatatyper i Excel VBA sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. VBA Randomize (eksempler med Excel-skabelon)
  2. Sådan omdøbes ark i VBA?
  3. Hvordan bruges VBA ReDim-erklæring?
  4. VBA-variabel erklæring | Excel-skabelon
  5. VBA-miljø

Kategori: