Belirli bir karakterden sonrasını almak

Katılım
13 Şubat 2010
Mesajlar
9
Excel Vers. ve Dili
türkçe
Merhaba aşağıdaki kod ile ilk : karakterden sonrasını alabiliyoruz. Ama Ben son : karakterden sonrasını almak istiyorum nasıl yapabilirim?

A1 den alıp B1 ye yazacağını varsayarsak:
Kod:
=EĞER(ESAYIYSA(UZUNLUK(A1)-MBUL(":";A1));SAĞDAN(A1;UZUNLUK(A1)-MBUL(":";A1));A1)
Örnek

Ali:Hasan:Ahmet:Mehmet

Benim yaptığım şekilde Hasan:Ahmet:Mehmet bölümünü alabiliyorum.

İstediğim ise sadece Mehmet kısmını alması. Bu arada : karakter adeti 3-5 gibi değişebiliyor. O yüzden sondaki : den sonrasını alması lazım.
 
Katılım
4 Ocak 2010
Mesajlar
2,074
Excel Vers. ve Dili
OFFICE 2007 PRO TR - Win7 X64
Altın Üyelik Bitiş Tarihi
18.06.2019
Merhabalar,


Alternatif kodu kullanabilirisiniz.


Kod:
=ayır(A1;4;":")
Kodlar alıntıdır.
Kod Bölümüne yapıştırıp deneyin.

Kod:
Function ayır(Txt, n, Ayırıcı) As String
    Dim Txt1 As String, temperament As String
    Dim Elemansayısı As Integer, i As Integer
    Dim Karekter As String
        Txt1 = Txt
    If Ayırıcı = Chr(32) Then Txt1 = Application.Trim(Txt1)
        If Right(Txt1, Len(Txt1)) <> Ayırıcı Then _
        Txt1 = Txt1 & Ayırıcı
        Elemansayısı = 0
    Karekter = ""
        For i = 1 To Len(Txt1)
        If Mid(Txt1, i, 1) = Ayırıcı Then
            Elemansayısı = Elemansayısı + 1
            If Elemansayısı = n Then

                ayır = Karekter
                Exit Function
            Else
                Karekter = ""
            End If
        Else
            Karekter = Karekter & Mid(Txt1, i, 1)
        End If
    Next i
    ayır = ""
End Function
 
Katılım
23 Eylül 2013
Mesajlar
1,348
Excel Vers. ve Dili
Excel 2007 İngilizce -
Excel 2010 Türkçe -
Excel 2013 Türkçe -
Merhabalar,
Alternatif;
Kod:
=KIRP(SAĞDAN(YERİNEKOY(A1;":";":"&YİNELE(" ";38);
  UZUNLUK(A1)-UZUNLUK(YERİNEKOY(A1;":";)));38))

Not
: Verilerinizin uzunluğuna göre 38 sayısını çoğaltınız.

Saygılar,
Wuic
 
Üst