VBA CDBL funkcija - Kaip konvertuoti vertę į dvigubą duomenų tipą?

„Excel VBA CDBL“ funkcija

VBA CDBL yra integruota duomenų tipo konvertavimo funkcija, o šios funkcijos naudojimas yra tai, kad ji paverčia bet kurio nurodyto kintamojo vertės duomenų tipą dvigubu duomenų tipu. Ši funkcija reikalauja tik vieno argumento, kuris yra paties kintamojo vertė.

VBA „CDBL“ reiškia „Konvertuoti į dvigubą“. Ši funkcija paverčia nurodytą skaičių į Double data tipą. Pažvelkite į CDBL funkcijos sintaksę.

  • Išraiška yra vertė, kurią bandome konvertuoti į dvigubo tipo duomenis.

Bet kurį slankųjį skaičių, kuris saugomas kaip dvigubas duomenų tipas, galima konvertuoti pritaikius CDBL funkciją.

Nurodykite čia, kad prisimintumėte: dvigubų duomenų tipą galima konvertuoti tik skaitinėmis reikšmėmis. Nieko, išskyrus skaitinę vertę, negalima konvertuoti į dvigubą tipą, todėl galų gale rodoma „Tipo neatitikimo klaida VBA“, kaip nurodyta toliau.

Ar kada nors naudojote dvigubą duomenų tipą VBA koduodami?

Jei ne, verta pasidomėti dabar. Dvigubas yra duomenų tipas, naudojamas įrašyti dešimtainę skaičiaus vietą. Mes galime turėti iki 13 kintančių dešimtainių skaičių.

Pavyzdžiui, pažvelkite į žemiau esantį VBA kodą.

Pirmiau aš apibrėžiau kintamojo (k) tipą kaip Sveikasis skaičius. Dim k As Sveikasis skaičius

Tada priskyriau vertę kaip k = 25,4561248694615

Kai paleisiu kodą, rezultatą gausime taip.

Rezultatą gavome kaip 25, nes kintamąjį apibūdinome kaip sveikąjį VBA skaičių iki artimiausios sveikojo skaičiaus vertės.

Norėdami parodyti rezultatą tokį, koks jis yra, turime pakeisti kintamojo tipą iš Sveikasis į Dvigubas.

Tai turėtų mums suteikti tikslų skaičių, kurį priskyrėme kintamajam.

Gerai, turint tai omenyje, mes taip pat galime konvertuoti visus trupmenos skaičius, kurie yra saugyklos kaip dvigubo tipo duomenys.

VBA CDBL funkcijos naudojimo pavyzdžiai

1 pavyzdys

Norėdami pradėti procesą, pažvelkime į žemiau pateiktą kodą.

Kodas:

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

Dabar paleisiu kodą ir pažiūrėsiu, kas bus.

Nors VBA kintamojo tipas yra „String“, jis vis tiek rodo dešimtaines reikšmes. Taip yra todėl, kad eilutė gali būti bet kokio tipo duomenų, todėl dešimtainiai arba slankieji skaičiai rodomi tokie, kokie yra.

Dabar pakeisiu vba duomenų tipą iš eilutės į sveikąjį.

Kodas:

Dvigubas_pavyzdys1 () Dim k As Sveikasis k = 48.14869569 MsgBox k End Sub

Dabar paleisiu kodą ir pažiūrėsiu, kas bus.

Čia CDBL funkcija vaidina gyvybiškai svarbų vaidmenį konvertuojant sveikojo skaičiaus duomenų tipą į dvigubą. Taigi žemiau kodas jums yra tas pats.

Kodas:

Sub Double_Eample1 () Dim IntegerNumber as String Dim DoubleNumber as Double IntegerNumber = 48.14869569 DoubleNumber = CDbl (IntegerNumber) MsgBox DoubleNumber End Sub

Tai pavers eilutės duomenų tipo vertę į Dviguba.

2 pavyzdys

Dabar paverskime skaičių 854.6947, kuris saugomas kaip variantas į Dvigubas duomenų tipas.

Kodas:

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

Pirmasis kintamasis, kurį paskelbiau „variantu“. Dim VaraintNumber

Pastaba: Kai kintamojo tipas nėra deklaruojamas, jis tampa universaliu duomenų tipu Variant.

Tada aš paskelbiau dar vieną kintamąjį, ty „Dim DoubleNumber As Double“.

Pirmojo kintamojo „ VaraintNumber “ reikšmę priskyrėme 854,6947.

Dabar, naudodami antrąjį kintamąjį, pritaikėme funkciją CDBL konvertuoti reikšmę Variant į Double data tipą.

„DoubleNumber“ = CDbl („VaraintNumber“)

Paskutinė dalis - parodyti rezultatą pranešimų laukelyje. „MsgBox DoubleNumber“

Dabar paleisiu kodą norėdamas pamatyti rezultatą.

Ką reikia atsiminti

  • Dvigubas duomenų tipas gali priimti tik skaitmeninius skaičius.
  • Jei pateikiama teksto reikšmė, tai sukels tipo neatitikimo klaidą.
  • Dvigubas duomenų tipas gali rodyti tik 13 slankiųjų skaičių skaitmenų.

Įdomios straipsniai...