Vba'da bir string'i double'a dönüştürme (örneklerle)
Bir metin dizesini çift veri türüne dönüştürmek için VBA’daki CDbl işlevini kullanabilirsiniz.
Bu işlevi pratikte kullanmanın yaygın bir yolu aşağıda verilmiştir:
Sub ConvertStringToDouble()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range(" A " & i)) Then
Range(" B " & i) = CDbl(Range(" A " & i))
Else
Range(" B " & i) = 0
End If
Next i
End Sub
Bu özel makro , A2:A11 aralığındaki her dizeyi, yalnızca dize bir sayıysa çift veri türüne dönüştürür.
Aksi takdirde dize boş bir değere dönüştürülür.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: VBA’da Bir Dizeyi Double’a Dönüştürme
Diyelim ki Excel’de şu anda metin dizeleri olarak biçimlendirilmiş aşağıdaki değerler sütununa sahibiz:
Her bir dizeyi yalnızca dize bir sayıysa double veri türüne dönüştürmek ve bunları B sütununda görüntülemek istediğimizi varsayalım.
Bunun için aşağıdaki makroyu oluşturabiliriz:
Sub ConvertStringToDouble()
Dim i As Integer
For i = 2 To 11
If IsNumeric(Range(" A " & i)) Then
Range(" B " & i) = CDbl(Range(" A " & i))
Else
Range(" B " & i) = 0
End If
Next i
End Sub
Bu makroyu çalıştırdığımızda aşağıdaki çıktıyı alıyoruz:
Yalnızca A sütunundaki sayı olan metin dizelerinin B sütunundaki çift veri türlerine dönüştürüldüğünü unutmayın.
Aksi takdirde metin dizeleri boş bir değere dönüştürülür.
Not : VBA CDbl işlevine ilişkin tüm belgeleri burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA’da string’i int’ye dönüştürme
VBA’da bir dize uzun dizeye nasıl dönüştürülür