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

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
107
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Altın Üyelik Bitiş Tarihi
04-02-2029
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

 

Erdal

Altın Üye
Katılım
23 Ekim 2006
Mesajlar
1,048
Excel Vers. ve Dili
Ev: 2021 - Türkçe 32 Bit
İşyeri: 2016 - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
08-10-2029
Veriniz A1 hücresindeyse B1 hücresine
=1*YERİNEKOY(A1;".";"")
formülünü yazınız.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,229
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
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
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,367
Excel Vers. ve Dili
Ofis 365 Türkçe
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
 

mehmetd

Altın Üye
Katılım
15 Ekim 2004
Mesajlar
107
Excel Vers. ve Dili
Ms Office Excel 2021 tr
Altın Üyelik Bitiş Tarihi
04-02-2029
Korhan ve Necdet Bey.ler çok teşekkür ederim. Aklınıza sağlık. Sağlıklı günler dilerim.
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,367
Excel Vers. ve Dili
Ofis 365 Türkçe
Bir şeye dikkatinizi çekmek istiyorum.
.15 size göre 15 mi dir? yoksa 0,15 mi?
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
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
 

Necdet

Moderatör
Yönetici
Katılım
4 Haziran 2005
Mesajlar
15,367
Excel Vers. ve Dili
Ofis 365 Türkçe
247088
Veysel bey, kodlarınız A sütununu B sütunundaki gibi yaptı.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,646
Excel Vers. ve Dili
Pro Plus 2021
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.
 
Üst