DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
Altın Üyelik Hakkında Bilgi
=[COLOR="red"]EĞER[/COLOR]([COLOR="red"]SÜTUN[/COLOR](A1)>[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1))-[COLOR="red"]UZUNLUK[/COLOR]([COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1);" ";""))+1;"";[COLOR="red"]PARÇAAL[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1)&" ";[COLOR="red"]EĞER[/COLOR]([COLOR="red"]SÜTUN[/COLOR](A1)=1;1;[COLOR="red"]BUL[/COLOR]("|";[COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1);" ";"|";[COLOR="red"]EĞER[/COLOR]([COLOR="red"]SÜTUN[/COLOR](A1)=1;"";[COLOR="red"]SÜTUN[/COLOR](A1)-1)))+1);[COLOR="red"]BUL[/COLOR]("|";[COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1)&" ";" ";"|";[COLOR="red"]SÜTUN[/COLOR](A1)))-[COLOR="red"]EĞER[/COLOR]([COLOR="red"]SÜTUN[/COLOR](A1)=1;1;[COLOR="red"]BUL[/COLOR]("|";[COLOR="red"]YERİNEKOY[/COLOR]([COLOR="red"]KIRP[/COLOR]($A1)&" ";" ";"|";[COLOR="red"]EĞER[/COLOR]([COLOR="red"]SÜTUN[/COLOR](A1)=1;"";[COLOR="red"]SÜTUN[/COLOR](A1)-1)))+1)))
Sub heceleme()
harf = "aâeıiîoöuûüAÂEIİÎOÖUÛÜ"
deg = [a1]
If Len(deg) = 1 Then
MsgBox deg
Exit Sub
End If
For x = Len(deg) To 1 Step -1
t = t + 1 'geçilen harf sayısı
If x <> Len(deg) Then
say = InStr(harf, Mid(deg, x, 1))
unlusay = InStr(harf, Mid(deg, x + 1, 1))
If x = 2 And say = 0 Then
If InStr(harf, Mid(deg, x - 1, 1)) = 0 Then
hece = hece & "-" & StrReverse(Mid(deg, x - 1, t + 1))
Exit For
End If
End If
If unlusay > 0 Or x = 1 Then
If say > 0 And x <> 1 Then
hece = hece & "-" & StrReverse(Mid(deg, x + 1, t - 1))
t = 1
Else
hece = hece & "-" & StrReverse(Mid(deg, x, t))
t = 0
End If
End If
End If
Next
MsgBox Mid(StrReverse(hece), 1, Len(hece) - 1)
End Sub
Sayın leumruk,
Çalışmanız için teşekkürler.
İki konu dikkatimi çekti:
1. Heceleme yapılınca sonucu bir hücreye yazsa daha iyi olur.
2. Uzun ünlülerde sonuç vermiyor.
duyûn, irfân, âlâ vb.
3. 2 Ünlü yan yana geldiğinde sonuç vermiyordu.
Mustafa Bey;
Elinize sağlık, ilginç bir çalışma olmuş. Ben yaptığım birkaç denemede, sesli harfle başlayan "araba", "evli" gibi kelimelerde sıkıntı olduğunu gördüm. Bir de; "kalemtraş" kelimesinde beklenen sonucu vermedi. Belki kelimenin türetilmiş olması özelliğindendir bilemiyorum.
Elinize sağlık,
.
Teşekkür ederim, Haluk Bey,
araba kelimesindeki sorunu düzelttim.
"kalemtraş"ı imlâ klavuzuna göre "kalemtıraş" şeklinde yazmak gerekiyor.![]()
[B1] = Replace(Replace(Mid(StrReverse(hece), 1, Len(hece) - 1), " -", " "), "- ", " ")
[B1].TextToColumns Destination:=[B1], Space:=True
Cells.EntireColumn.AutoFit