cümledeki kelimelerin ilk harflerini yazma

Katılım
25 Ocak 2006
Mesajlar
764
Excel Vers. ve Dili
2019 tr
cümledeki kelimelerin ilk harflerini yazmak için bir fonksiyon oluşturulabilir mi? "ali topu tut" cümlesinin sonucu ATT olacak şekilde.
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,892
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
Function İlkharfler(text) As String
mystring = Left(text, 1)
For i = 2 To Len(text) - 1
If Mid(text, i, 1) = " " Then
    mystring = mystring & Mid(text, i + 1, 1)
End If
Next i
İlkharfler = WorksheetFunction.Substitute(UCase(mystring), " ", "")
End Function
Function UCASETR(ByVal metin As String)
UCASETR = UCase(Replace(Replace(metin, "ı", "I"), "i", "İ"))
End Function
=İlkharfler(UCASETR(A1))
 
Son düzenleme:
Katılım
25 Ocak 2006
Mesajlar
764
Excel Vers. ve Dili
2019 tr
eline sağlık. araya "-" koymak için ne yapabiliriz. hep sonradan çalışıyor kafamız ama. kusura bakmazsın umarım. teşekkürler.
 

veyselemre

Özel Üye
Katılım
9 Mart 2005
Mesajlar
3,553
Excel Vers. ve Dili
Pro Plus 2021
Alternatif;
Kod:
Function ilkharfler(text) As String
    For Each e In Split(WorksheetFunction.Proper(text), " ")
        ilkharfler = ilkharfler + "-" + Mid(e, 1, 1)
    Next e
    ilkharfler = Mid(ilkharfler, 2)
End Function
 

Ali

Uzman
Katılım
21 Temmuz 2005
Mesajlar
7,892
Excel Vers. ve Dili
İş:Excel 2016-Türkçe
Kod:
Function İlkharfler(text) As String
mystring = Left(text, 1)
For i = 2 To Len(text) - 1
If Mid(text, i, 1) = " " Then
    mystring = mystring & "-" & Mid(text, i + 1, 1)
End If
Next i
İlkharfler = WorksheetFunction.Substitute(UCase(mystring), " ", "")
End Function
Function UCASETR(ByVal metin As String)
UCASETR = UCase(Replace(Replace(metin, "ı", "I"), "i", "İ"))
End Function
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,316
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Alternatif;

5 kelimeye kadar aşağıdaki dizi formülünü kullanabilirsiniz.

DİZİ formüldür.

Kod:
=BÜYÜKHARF(SOLDAN(A1;1)&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);1);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);2);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);3);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);4);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);5);1);""))
 
Katılım
25 Ocak 2006
Mesajlar
764
Excel Vers. ve Dili
2019 tr
Alternatif;

5 kelimeye kadar aşağıdaki dizi formülünü kullanabilirsiniz.

DİZİ formüldür.

Kod:
=BÜYÜKHARF(SOLDAN(A1;1)&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);1);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);2);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);3);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);4);1);"")&EĞERHATA("-"&PARÇAAL(A1;KÜÇÜK(EĞER(PARÇAAL(A1;SATIR($1:$1024);1)=" ";SATIR($1:$1024)+1);5);1);""))
teşekkürler. herkes müthiş gerçekten.
 
Üst