• DİKKAT

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

Selection.Replace hakkında

Katılım
18 Aralık 2011
Mesajlar
89
Excel Vers. ve Dili
office 2010 tr
aşağıdaki rakamları içeren hücreler seçiliyken
Kod:
449189061,6038 TL+ KDV
746858413,088074 TL+ KDV
637218279,6 TL+ KDV
705464018,123326 TL+ KDV
688517892,022604 TL+ KDV
491156362,150776 TL+ KDV
698774364,42814 TL+ KDV
0 TL+ KDV
672536900 TL+ KDV
0 TL+ KDV


Kod:
Selection.Replace What:=" *", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

kodu çalıştığında rakamlar aşağıdaki gibi oluyor. virgülden sonraki sayılar sanki virgül yokmuş gibi oluyor.. neden oluyor acaba, nasıl çözebilirim.

Kod:
4.491.890.616.038
746.858.413.088.074
637218279,6
705.464.018.123.326
688.517.892.022.604
491.156.362.150.776
69.877.436.442.814
0
672536900
0


düzeltme; aşağıdaki kod da aynı sonucu verdi.
Kod:
 Dim Cell As Range
For Each Cell In Selection
    Cell.Value = Replace(Cell.Value, " TL+ KDV", "")
Next
 
Son düzenleme:
Nedenini çözemedim. A1'deki veri için aşağıdaki formülü kullanırsanız sayıyı B1 hücresine alabilirsiniz:

Kod:
=YERİNEKOY(E1;" TL+ KDV";"")*1

YA da Metni Sütunlara Dönüştür özelliğini kullanırsanız yine sorun çıkmıyor.
 
metni sütunlara dönüştürdüm, sorun yok gibi tşkler. ama neden olduğunu bir türlü anlayamadım. ctrl+h ile değiştirnce sorun yok, ama aynı şeyi makroyla yapınca sorun oluyor.
 
Aşağıdaki gibi öncelikle virgülü noktaya çevirmeniz gerekir.

Kod:
Selection.Replace What:=",", Replacement:=".", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

Selection.Replace What:=" TL+ KDV", Replacement:="", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
 
Geri
Üst