Hva er Excel VBA CDBL?

CDBL er en VBA-funksjon som bruker for å konvertere uttrykkene til en dobbel datatype. VBA består av en rekke datakonverteringsfunksjoner. Dette hjelper til med å endre datatypen til en variabel eller verdi fra en til en annen. I forskjellige beregninger er konverteringen en nødvendig prosess for å få riktig resultat. CDBL er en av datakonverteringsfunksjonene som er inkludert i Typekonverteringsfunksjonene i VBA. CDBL står for 'Convert to double'. Mens du behandler data kan du komme over situasjoner for å endre heltallstallene til doble. For å skrive ut det nøyaktige resultatet vil denne funksjonen hjelpe deg. VBA CDBL-funksjonen godtar bare tall. Et hvilket som helst uttrykk bortsett fra tall, vil produsere en feil med typen feil.

Format av CDBL-funksjon i Excel VBA

CDBL er en enkel funksjon som krever et enkelt uttrykk for å operere i VBA. Uttrykket skal være et tall.

  • Uttrykk: Er tallet du vil konvertere til et flytende tall.

Hvis uttrykket er noe bortsett fra et tall, vil funksjonen returnere en feilpasning. Se eksemplet nedenfor, der et uttrykk som ikke er nummer, sendes til funksjonen CDBL og det ga en feiltype feil.

Bruk av CDBL-funksjon i VBA

La oss sjekke hvordan VBA CDBL-funksjonen hjelper oss med databehandling. For å få en klar oversikt og forstå den praktiske bruken av å endre datatypen, se eksemplet nedenfor. Du kan se forskjellen i henhold til datatypen som brukes på den samme variabelen.

  • Deklarere en variabel som heltall datatype og tilordne en flytende verdi til den. Mens du skriver ut verdien, se hvordan det kommer til å vise verdien.

Kode:

 Privat sub addconvert () Dim b Som heltal End Sub 

  • En flytende verdi tilordnes den deklarerte heltalvariabelen. 785.456923785475 er tilordnet variabel b som er en heltalvariabel.

Kode:

 Privat sub addconvert () Dim b Som heltall b = 785.456923785475 Slutt sub 

  • Skriv ut den tildelte verdien med en meldingsboks.

Kode:

 Privat sub addconvert () Dim b Som heltall b = 785.456923785475 MsgBox b End Sub 

Se hvordan resultatene viser forskjell mens du skriver ut verdien.

Du har tildelt et nummer med flytende verdier, men utdataene viser bare heltalets del av det gitte tallet. Her blir variabelen 'b' deklarert som heltall slik at den ikke aksepterer en flytende verdi. Heltalsdelen av desimalverdien tas og desimaldel unngås. Siden variabelen er erklært som et helt tall, vil tallet avrundes til nærmeste heltall.

Hvis du vil skrive ut dataene som de er, endrer du variabel datatype til dobbel I stedet for heltaledatatypen.

  • Ved å gjøre en enkel endring i samme kode kan du skrive ut det gitte nummeret som det er. Erklær variabelen som en dobbel datatype.

Kode:

 Privat sub addconvert () Dim b As Double End Sub 

  • Et nummer som dobbelt tildeles den deklarerte doble variabelen. 785.456923785475 er tilordnet variabel b som er dobbelt i datatype.

Kode:

 Privat sub addconvert () Dim b As Double b = 785.456923785475 Slutt Sub 

  • Skriv ut den tildelte verdien ved å bruke en meldingsboks.

Kode:

 Privat sub addconvert () Dim b As Double b = 785.456923785475 MsgBox b End Sub 

Se hvordan resultatene viser forskjell mens du skriver ut verdien. Du har tildelt et nummer med flytende verdier.

Sammenlign begge utgangene du kan se forskjellen. Til og med dataene og variabelen er de samme endringen i datatype endret hele utdataene. Fra dette vil du få viktigheten av datatype og hvordan den påvirker hele programmet. Dette er grunnen til at du bruker en annen type konverteringsfunksjoner med VBA.

Eksempler på CDBL-funksjon i Excel VBA

Nedenfor er de forskjellige eksemplene på VBA-konvertering til dobbel.

Du kan laste ned denne VBA CDBL Excel Mal her - VBA CDBL Excel Mal

Eksempel 1: Konverter strengdatatype til dobbelt

La oss se hvordan datakonverteringen fungerer, og hva er endringene du kan gjøre ved hjelp av datakonverteringsfunksjoner. Strengen er en datatype som godtar alle datatypene. En variabel er definert som en streng og tildeler et nummer til den.

  • Bruk en privat funksjon for å sjekke endringene i forskjellige datatyper, opprette en funksjonskonvertering som privat, erklære variabelen 'a' som en streng.

Kode:

 Private Sub convert () Dim a As String End Sub 

  • For å utføre konverteringen trenger du en variabel. Siden variabelen konverteres til dobbel datatype, erklærer den som en dobbel datatype. Etter datakonvertering blir verdien tilordnet denne variabelen.

Kode:

 Private Sub convert () Dim a As String Dim convert som Double End Sub 

  • Tildel et flytende nummer 1234.5645879 til strengvariabelen. Strengen datatype aksepterer tallene med flytende verdier.

Kode:

 Private Sub convert () Dim a As String Dim convert As Double a = 1234.5645879 Slutt Sub 

  • Nå bruker du VBA CDBL-funksjonen for å konvertere verdien til dobbel. Du kan bruke 'konvertere' variabelen som er erklært som en dobbel datatype. Gi variabelen a som uttrykk til CDBL-funksjonen.

Kode:

 Private Sub convert () Dim a As String Dim convert As Double a = 1234.5645879 convert = CDbl (a) End Sub 

  • Hvis du vil se utdataverdien, kan du skrive ut med en meldingsboks.

Kode:

 Private Sub convert () Dim a As String Dim convert As Double a = 1234.5645879 convert = CDbl (a) MsgBox convert End Sub 

  • Kjør denne koden ved å slå F5 direkte eller manuelt slå Run-knappen på øvre venstre panel.

  • Verdien som er tilordnet variabelen 'a', skrives ut som den samme med flytende punkter og en heltallverdi. Verdien konverteres til dobbel datatype, og den samme skrives ut som nedenfor.

Eksempel 2 - Konvertere og legge til to nummer

Du har to variabler for å legge til og finne summen som en del av beregningen din. Begge er flytende tall med desimalverdier. Men en variabel er erklært som heltall og en annen som dobbel.

  • Opprett et funksjonstegn for å finne summen av to tall. To variabler A1 og A2 er deklarert som henholdsvis heltall og dobbel.

Kode:

 Private Sub add () Dim A1 Som heltall Dim A2 Som Double End Sub 

  • Tildel de to tallene til de respektive variablene. Begge er to flytende tall med desimalverdier.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt A1 = 1256.45 A2 = 1234.58 Slutt sub 

  • Deklarer en tredje variabel sum som dobbel datatype siden resultatet blir en dobbel verdi.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt Dim sum Som Dobbelt A1 = 1256.45 A2 = 1234.58 Slutt Sub 

  • Legg til de gitte to tallene og sett resultatet i den variable summen.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt Dim sum Som Dobbelt A1 = 1256.45 A2 = 1234.58 sum = A1 + A2 End Sub 

  • Ved hjelp av en meldingsboks kan du skrive ut utdataene.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt Dim sum Som Dobbelt A1 = 1256.45 A2 = 1234.58 sum = A1 + A2 MsgBox sum End Sub 

  • Kjør denne koden ved å slå F5 direkte eller manuelt slå Run-knappen på øvre venstre panel.

Det forventede resultatet er 2491.03, og mens du sjekker resultatet, kan du se en viss forskjell i resultatet. Misforholdet i resultatet skjedde på grunn av verdien tatt av variabel A1. Siden dette er en heltalvariabel, aksepterer den ikke desimaldelen av tallet, bare heltaledelen tas mens du behandler summen.

  • For å unngå dette, konverterer tallet A1 til dobbelt og tilordner det konverterte tallet til en annen variabel A3.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt Dim sum Som Dobbelt A1 = 1256.45 A2 = 1234.58 A3 = CDbl (1256.45) sum = A1 + A2 MsgBox sum End Sub 

  • Nå legger du til den konverterte variabelen med A2 i stedet for A1. Siden tallet er konvertert til dobbel datatype, vil verdien med flytende tall bli akseptert og lagt til med A2.

Kode:

 Privat subtillegg () Dim A1 Som heltall Dim A2 Som Dobbelt Dim sum Som Dobbelt A1 = 1256.45 A2 = 1234.58 A3 = CDbl (1256.45) sum = A2 + A3 MsgBox sum End Sub 

  • Kjør denne koden ved å slå F5 direkte eller manuelt slå Run-knappen på øvre venstre panel.

Sumverdien er korrigert og gitt det forventede resultatet.

Ting å huske

  • VBA CDBL-funksjonen aksepterer ikke verdier i stedet for et tall.
  • En type feilpasning vil bli produsert hvis en tekstverdi gis til VBA CDBL-funksjonen.
  • Dobbelt datatype viser 13-sifrede desimalverdier.
  • VBA CDBL-funksjon hjelper deg å få et riktig resultat mens du behandler tallene i Excel.

Anbefalte artikler

Dette er en guide til VBA CDBL-funksjon. Her diskuterer vi hvordan du bruker VBA CDBL-funksjon for å konvertere verdien til dobbel datatype i Excel sammen med noen praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. VBA Block Kommentar
  2. SUMPRODUCT-funksjon i Excel
  3. VBA Named Range
  4. KOMBIN Funksjon i Excel

Kategori: