Funcția VBA CDBL - Cum se convertește valoarea în tip de date dublu?

Funcția Excel VBA CDBL

VBA CDBL este o funcție de conversie a tipului de date încorporată, iar utilizarea acestei funcții este că convertește tipul de date al valorii oricărei variabile date într-un tip de date dublu, această funcție acceptă doar un singur argument, care este valoarea variabilei în sine.

În VBA, „CDBL” înseamnă „Convertiți în dublu”. Această funcție convertește numărul dat în tip de date dublu. Uitați-vă la sintaxa funcției CDBL.

  • Expresia este valoarea pe care încercăm să o convertim în tip de date dublu.

Orice număr plutitor care este stocat ca alt tip de date dublu poate fi convertit prin aplicarea funcției CDBL.

Punct de reținut aici: numai valorile numerice pot fi convertite în tip de date dublu. Orice altceva decât valoarea numerică nu poate fi convertit în tip dublu, așa că ajungeți să afișați „Eroare de nepotrivire de tip în VBA”, precum cele de mai jos.

Ați folosit vreodată un tip de date dublu în codarea VBA?

Dacă nu, merită să aruncăm o privire acum. Dublu este tipul de date utilizat pentru a stoca poziția zecimală a numărului. Putem avea până la 13 numere zecimale plutitoare.

De exemplu, uitați-vă la codul VBA de mai jos.

În cele de mai sus, am definit tipul variabilei (k) ca întreg. Dim k Ca întreg

Apoi, am atribuit valoarea ca k = 25.4561248694615

Când rulez codul, vom obține rezultatul după cum urmează.

Am obținut rezultatul ca 25, deoarece am definit variabila ca întreg VBA rotund la cea mai apropiată valoare întreagă.

Pentru a afișa rezultatul așa cum este, trebuie să schimbăm tipul variabilei de la Întreg la Dublu.

Acest lucru ar trebui să ne dea numărul exact așa cum am atribuit variabilei.

Ok, ținând cont de acest lucru, putem converti, de asemenea, toate numerele de fracții, care sunt stocate ca un tip de date non-dublu.

Exemple de utilizare a funcției VBA CDBL

Exemplul nr. 1

Pentru a începe procedura, să ne uităm la codul de mai jos.

Cod:

Sub Double_Example1 () Dim k As String k = 48.14869569 MsgBox k End Sub

Acum voi rula codul și voi vedea ce se întâmplă.

Chiar dacă tipul de variabilă VBA este „Șir”, acesta arată în continuare valorile zecimale. Acest lucru se datorează faptului că șirul poate fi de orice tip de date, astfel încât numerele zecimale sau plutitoare sunt afișate așa cum este.

Acum voi schimba tipul de date vba din șir în Întreg.

Cod:

Sub Double_Example1 () Dim k As Integer k = 48.14869569 MsgBox k End Sub

Acum voi rula codul și voi vedea ce se întâmplă.

Aici funcția CDBL joacă un rol vital în conversia tipului de date întregi la dublu. Deci, codul de mai jos este același pentru dvs.

Cod:

Sub Double_Example1 () Dim IntegerNumber As String Dim DoubleNumber As Double IntegerNumber = 48.14869569 DoubleNumber = CDbl (IntegerNumber) MsgBox DoubleNumber End Sub

Aceasta va converti valoarea tipului de date șir la Dublu.

Exemplul nr. 2

Acum, să convertim numărul 854.6947, care este stocat ca Variant în tip de date Dublu.

Cod:

Sub Double_Example2 () Dim VaraintNumber Dim DoubleNumber As Double VaraintNumber = 854.6947 DoubleNumber = CDbl (VaraintNumber) MsgBox DoubleNumber End Sub

Prima variabilă pe care am declarat-o ca „Variantă”. Dim Varaint Număr

Notă: Când tipul variabilei nu este declarat, acesta devine un tip de date universal Variant.

În continuare, am declarat încă o variabilă, și anume, Dim DoubleNumber As Double.

Pentru prima variabilă, VaraintNumber, am atribuit valoarea 854.6947.

Acum, folosind a doua variabilă, am aplicat funcția CDBL pentru a converti valoarea Variantei în tipul de date Double.

DoubleNumber = CDbl (VaraintNumber)

Ultima parte este de a arăta rezultatul în caseta de mesaj. MsgBox DoubleNumber

Acum voi rula codul pentru a vedea rezultatul.

Lucruri de amintit

  • Un tip de date dublu poate accepta numai numere numerice.
  • Dacă este furnizată valoarea textului, aceasta va provoca o eroare de tip necorespunzător.
  • Un tip de date dublu poate afișa doar 13 cifre din numere flotante.

Articole interesante...