Merhaba İlker Bey,
KTF ile çözümü aşağıdaki gibi denedim, sorunsuz çalıştı:
Public Function ExcelceKisiAd(kisi_ad As String)
Application.Volatile
ad_adet = Split(kisi_ad)
For i = 0 To UBound(ad_adet)
adsonharf = VBA.Right(ad_adet(i), 1)
If adsonharf Like "[A-Z]" Or _
adsonharf = "Ç" Or adsonharf = "Ğ" Or adsonharf = "İ" _
Or adsonharf = "Ö" Or adsonharf = "Ş" Or adsonharf = "Ü" _
Then soyad = soyad & " " & ad_adet(i) Else Ad = Ad & " " & ad_adet(i)
Next i
ExcelceKisiAd = VBA.LTrim(Ad)
End Function
Public Function ExcelceKisiSoyad(kisi_soyad As String)
Application.Volatile
soyad_adet = Split(kisi_soyad)
For i = 0 To UBound(soyad_adet)
sonharf = VBA.Right(soyad_adet(i), 1)
If sonharf Like "[A-Z]" Or _
sonharf = "Ç" Or sonharf = "Ğ" Or sonharf = "İ" _
Or sonharf = "Ö" Or sonharf = "Ş" Or sonharf = "Ü" _
Then soyad = soyad & " " & soyad_adet(i) Else Ad = Ad & " " & soyad_adet(i)
Next i
ExcelceKisiSoyad = VBA.LTrim(soyad)
End Function
Dosyanız ektedir.