VBA CDBL İşlevi - Değeri Çift Veri Türüne Dönüştürme

Excel VBA CDBL İşlevi

VBA CDBL , yerleşik bir veri türü dönüştürme işlevidir ve bu işlevin kullanımı, herhangi bir değişkenin değerinin veri türünü Double veri türüne dönüştürmesidir, bu işlev yalnızca değişkenin kendi değeri olan tek bir bağımsız değişken alır.

VBA'da "CDBL", "İkiye Dönüştür " anlamına gelir . Bu işlev, verilen sayıyı Double veri türüne dönüştürür. CDBL işlevinin sözdizimine bir göz atın.

  • İfade , Double veri türüne dönüştürmeye çalıştığımız değerdir.

Çift veri türü dışında saklanan herhangi bir kayan sayı, CDBL işlevi uygulanarak dönüştürülebilir.

Burada Hatırlamak İçin İşaretle : Yalnızca sayısal değerler Double veri türüne dönüştürülebilir. Sayısal değer dışındaki herhangi bir şey çift tipe dönüştürülemez, bu nedenle aşağıdaki gibi "VBA'da Tür Uyuşmazlığı Hatası" görüntülenir.

VBA kodlamasında hiç çift veri türü kullandınız mı?

Değilse, şimdi bir göz atmaya değer. Çift, sayının ondalık konumunu saklamak için kullanılan veri türüdür. 13'e kadar kayan ondalık sayıya sahip olabiliriz.

Örneğin, aşağıdaki VBA koduna bakın.

Yukarıda değişken (k) tipini Tamsayı olarak tanımladım. Tamsayı Olarak Dim k

Ardından, değeri k = 25.4561248694615 olarak atadım

Kodu çalıştırdığımda aşağıdaki gibi sonucu alacağız.

Değişkeni Tamsayı VBA yuvarlayarak en yakın tamsayı değerine yuvarladığımız için sonucu 25 olarak aldık.

Sonucu olduğu gibi göstermek için, değişken türünü Tamsayı'dan Çift'e değiştirmemiz gerekir.

Bu bize değişkene atadığımız tam sayıyı vermelidir.

Tamam, bunu akılda tutarak, çift olmayan veri türü olarak depolanan tüm kesir sayılarını da dönüştürebiliriz.

VBA CDBL İşlevini Kullanma Örnekleri

Örnek 1

İşlemlere başlamak için aşağıdaki koda bakalım.

Kod:

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

Şimdi kodu çalıştıracağım ve ne olacağını göreceğim.

VBA değişken türü "Dize" olsa da, yine de ondalık değerleri gösteriyor. Bunun nedeni, String'in herhangi bir veri türünde olabilmesidir, bu nedenle ondalık veya kayan sayılar olduğu gibi gösterilir.

Şimdi vba veri türünü dizeden Tamsayı olarak değiştireceğim.

Kod:

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

Şimdi kodu çalıştıracağım ve ne olacağını göreceğim.

Bu, CDBL işlevinin tamsayı veri türünü ikiye katlama konusunda hayati bir rol oynadığı yerdir. Yani aşağıdaki kod sizin için aynıdır.

Kod:

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

Bu, dize veri türü değerini Double'a dönüştürecektir.

Örnek 2

Şimdi Variant olarak saklanan 854.6947 sayısını Double veri türüne çevirelim.

Kod:

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

"Varyant" olarak ilan ettiğim ilk değişken. Sönük VaraintNumber

Not: Değişken türü bildirilmediğinde, evrensel veri türü Variant olur.

Daha sonra, bir değişken daha tanımladım , yani Dim DoubleNumber As Double.

İlk değişken olan VaraintNumber için değeri 854.6947 olarak atadık.

Şimdi ikinci değişkeni kullanarak, Variant değerini Double veri türüne dönüştürmek için CDBL işlevini uyguladık.

DoubleNumber = CDbl (VaraintNumber)

Son kısım, sonucun mesaj kutusunda gösterilmesidir. MsgBox DoubleNumber

Şimdi sonucu görmek için kodu çalıştıracağım.

Hatırlanacak şeyler

  • Çift veri türü yalnızca sayısal sayıları kabul edebilir.
  • Metin değeri sağlanırsa, Tür Uyuşmazlığı hatasına neden olur.
  • Bir çift veri türü yalnızca 13 basamaklı kayan sayı gösterebilir.

Ilginç makaleler...