• DİKKAT

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

Hücre içerisindeki nümerik olmayan değerleri almak

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,201
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba;

Bir hücre içerisinde nümerik olmayan değerleri (alfabetik) almak istiyorum.

olsun, buradaki sayısal değerleri silerek
şeklinde yazacak bir kod yada fonksiyona ihtiyacım var..

Bunu nasıl yapabilirim...

Teşekkürler, İyi Çalışmalar.
 
Soz konusu hucreleri fare ile secip, kodu calistirin. Yanindaki hucrelere sonucu yazacaktir.

Kod:
Sub Test()
    Dim RegExp
    Dim MyCell As Range
        For Each MyCell In Selection
            Set RegExp = CreateObject("VBscript.RegExp")
            RegExp.Global = True
            RegExp.Pattern = "[0-9]"
            MyCell.Offset(0, 1) = RegExp.Replace(MyCell, "")
        Next
    Set RegExp = Nothing
End Sub
 
Haluk bey,

verdiğiniz örneği uyguladım, sadece rakamları, ama eşittir, slash, tire vs gibi karakterleri ayırmıyor, sadece alfabetik değerlerini ayırmak istesek, kod nasıl olurdu? Ã?rneğin A sütununda isimlerin olduğunu düşünürsek (ki dışardan gelen bilgilerde böyle dosyalarla karşılaştım)
 
Necdet bey' Alıntı:
...
sadece alfabetik değerlerini ayırmak istesek, kod nasıl olurdu?
...

Aşağıdaki satırı, orjinaliyle değiştirip, deneyin.

Kod:
RegExp.Pattern = "[*=/+0-9,;?.~%-]"

Ya da bunu kullanabilirsiniz,

Kod:
RegExp.Pattern = "[^a-zA-Z]"
 
O zaman şöyle kullanın isterseniz;

Kod:
            RegExp.Pattern = "[^a-zA-Z]"
            MyCell.Offset(0, 1) = Replace(RegExp.Replace(MyCell, ""), " ", "")
 
Ã?ylede kullandım Haluk Bey, ama bu sefer Çorum'un Ç'si gitti :) Þanlıurfa yazsaydım sanırım Þ de gidecekti
 
Sadece rakamları nasıl alabiliriz acaba. Yani işlemin tersine çevirebiliriz.
 
Fly_butterfly' Alıntı:
Sadece rakamları nasıl alabiliriz acaba. Yani işlemin tersine çevirebiliriz.

Kod:
RegExp.Pattern = "[^0-9]"
 
Necdet bey' Alıntı:
......, ama bu sefer Çorum'un Ç'si gitti :) Þanlıurfa yazsaydım sanırım Þ de gidecekti

Kod:
            RegExp.Pattern = "[^Ã?IÇÞİÐÜ^a-zA-Z]"
            MyCell.Offset(0, 1) = Replace(RegExp.Replace(MyCell, ""), " ", "")
 
Teşekkürler haluk bey,

Formülü uygulamadan önce
İMİ3583888-046-0863-85050

böyle idi, uyguladıktan sonra
3583888046086380000

böyle oldu. İlk şekildeki gibi sadece harflerin silinmesini istiyorum ve örnek gibi olabilirmi acaba.
3583888-046-0863-85050 Yani böyle...
 
Fly_butterfly' Alıntı:
.....
İlk şekildeki gibi sadece harflerin silinmesini istiyorum ve örnek gibi olabilirmi acaba.
3583888-046-0863-85050 Yani böyle...

Kod:
RegExp.Pattern = "[^0-9-]"
 
Sn. Haluk bey,

Yardımlarınız için gerçekten çok çok teşekkür ederim. Bu çok işime yarar bir çalışma oldu. Tekrar teşekkür ederim.
 
Geri
Üst