• DİKKAT

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

Soru Hücre içindeki metinde son virgülün değiştirilmesi

Katılım
14 Nisan 2006
Mesajlar
59
Excel Vers. ve Dili
ofis 2010 64 bit
İyi günler dilerim.
B sütunundaki "Ali, Veli, Turhan, Hakan" şeklinde bulunan metni, "Ali, Veli, Turhan ve Hakan" şeklinde düzenlemek istiyorum. İsim sayısı değişiklik gösterebiliyor.
Yardımlarınız için şimdiden teşekkür ederim.
 

Ekli dosyalar

Merhaba

Bunu deneyiniz.
C++:
=EĞERHATA(DEĞİŞTİR(B2;TOPLA.ÇARPIM(MAK((PARÇAAL(B2;SÜTUN(1:1);1)=",")*(SÜTUN(1:1))));1;" ve");B2)

Dizi formülüdür;
Ctrl+Shift+Enter ile girilmelidir
 
Alternatif;

C++:
=EĞERHATA(YERİNEKOY(B2;",";" ve";UZUNLUK(B2)-UZUNLUK(YERİNEKOY(B2;",";"")));B2)
 
Merhaba,
Soru Makro bölümünde sorulduğu için ben de makrolu çözümü vereyim.
Aşağıdaki kodları kendinize uyarlayınız. Örneğinde olduğu gibi veriye B sütununda olduğu varsayılmıştır.

Değişimi doğrudan bu sütun içinde yapar, ayrı sütun kullanılmamıştır.

Kod:
Public Sub SonVirgulVeOlsun()

Dim i   As Long, _
    j   As Integer, _
    arr As Variant, _
    t   As Variant, _
    txt As String

i = Cells(Rows.Count, "B").End(3).Row

arr = Range(Cells(2, "B"), Cells(i, "B")).Value

For i = 1 To UBound(arr)
    t = Split(arr(i, 1), " ")
    If UBound(t) > 0 Then
        t(UBound(t) - 1) = Replace(t(UBound(t) - 1), ",", " ve")
    End If
    arr(i, 1) = Join(t, " ")
Next i

Range("B2").Resize(UBound(arr, 1), 1) = arr

End Sub
 
Necdet Bey çok teşekkür ederim.
 
Geri
Üst