• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Soru Metin olarak görünen Sayıya dönüştür

  • Konbuyu başlatan Konbuyu başlatan mehmetd
  • Başlangıç tarihi Başlangıç tarihi

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
124
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Sayın arkadaşlar iyi günler
aşağıdaki gibi görünen rakamları sayıya nasıl dönüştürebilirim. her 2 tarafta da nokta var. Yardımlarınız için şimdiden teşekkür ederim.

1.352.66

37.811.22

1.094.42

104.800.79

1.171.28

36.579.60
 
Veriniz A1 hücresindeyse B1 hücresine
=1*YERİNEKOY(A1;".";"")
formülünü yazınız.
 
Alternatif;

Hücreleri seçtikten sonra kodu çalıştırınız..

C++:
Option Explicit

Sub Text_to_Value()
    Dim Rng As Range, X As Variant
    
    For Each Rng In Selection
        If Not IsError(Rng.Value) Then
            X = Len(Rng.Value) - Len(Replace(Rng.Value, ".", ""))
            
            If X > 1 Then
                X = Replace(WorksheetFunction.Substitute(Rng.Value, ".", ",", X), ".", "")
            Else
                X = Replace(Rng.Value, ".", "")
            End If
            If Not IsNumeric(X) Then
                Rng = X
            Else
                Rng = CDbl(X)
            End If
        End If
    Next
    
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Merhaba,
Alternatif olarak KTF'yi deneyiniz.

Kullanımı : =cev(a1)


Kod:
Public Function cev(Rng As Range) As Double

Dim i As Long
Dim j As Integer
Dim t As Variant
Dim d As String

    t = Split(Rng.Value, ".")
    If Len(t(UBound(t))) = 3 Then
        d = Rng + 0
    Else
'        d = ""
        For j = LBound(t) To UBound(t) - 1
            d = d & t(j)
        Next j
        d = d & "," & t(UBound(t)) + 0
    End If
cev = d

End Function
 
Korhan ve Necdet Bey.ler çok teşekkür ederim. Aklınıza sağlık. Sağlıklı günler dilerim.
 
Bir şeye dikkatinizi çekmek istiyorum.
.15 size göre 15 mi dir? yoksa 0,15 mi?
 
Kod:
Sub test()
    Dim huc As Range
    With CreateObject("VBScript.RegExp")
        .Pattern = "(\d+)\.(\d+\.\d+)"
        For Each huc In Selection
            If .test(huc) Then huc.Value = .Replace(huc, "$1$2")
        Next
    End With
End Sub
 
247088
Veysel bey, kodlarınız A sütununu B sütunundaki gibi yaptı.
 
Sayın arkadaşlar iyi günler
aşağıdaki gibi görünen rakamları sayıya nasıl dönüştürebilirim. her 2 tarafta da nokta var. Yardımlarınız için şimdiden teşekkür ederim.

1.352.66

37.811.22

1.094.42

104.800.79

1.171.28

36.579.60

Kod sorunun amacına hizmet edecek şekilde (her 2 tarafta da nokta var) yazılmış bir koddur.

Kod:
        .Pattern = "^(\d+)\.(\d+\.\d+)$"
gibi değişiklik yapılırsa 2 nokta olmadığı zaman kod pas geçecektir.
 
Geri
Üst