Arkadaşlar merhaba çok aradım ancak herhangi bir kaynak bulamadım. yaptığım evrak programında isimlere gelen ekleri bulmanın bir yolu varmıdır. bir örnek ekledim. nasıl olduğu önemli değil ister tabloda yapsın ister sadece eki bulsun. elinde konuyla ilgili örneği olan varmı. bir arkadaştan aşşağıdaki kodu buldum ama çalışmadı.
Public Function taki1(kelime As String)
Dim t As String
If (Right(kelime, 1) = "A" Or Right(kelime, 1) = "I") Then t = "'nın"
If (Right(kelime, 1) = "E" Or Right(kelime, 1) = "İ") Then t = "'nin"
If (Right(kelime, 1) = "O" Or Right(kelime, 1) = "U") Then t = "'nun"
If (Right(kelime, 1) = "Ö" Or Right(kelime, 1) = "Ü") Then t = "'nün"
If (Left(Right(kelime, 2), 1) = "A" Or Left(Right(kelime, 2), 1) = "I") Then t = "'ın"
If (Left(Right(kelime, 2), 1) = "E" Or Left(Right(kelime, 2), 1) = "İ") Then t = "'in"
If (Left(Right(kelime, 2), 1) = "O" Or Left(Right(kelime, 2), 1) = "U") Then t = "'un"
If (Left(Right(kelime, 2), 1) = "Ö" Or Left(Right(kelime, 2), 1) = "Ü") Then t = "'ün"
If (Left(Right(kelime, 3), 1) = "A" Or Left(Right(kelime, 3), 1) = "I") Then t = "'ın"
If (Left(Right(kelime, 3), 1) = "E" Or Left(Right(kelime, 3), 1) = "İ") Then t = "'in"
If (Left(Right(kelime, 3), 1) = "O" Or Left(Right(kelime, 3), 1) = "U") Then t = "'un"
If (Left(Right(kelime, 3), 1) = "Ö" Or Left(Right(kelime, 3), 1) = "Ü") Then t = "'ün"
taki1 = t
End Function
İyelik Eki Vba Kodu
Ben bunun için şöyle bir modül hazırlamıştım.
Kod:
Function isimek(kelime As String) As String
If Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "A" Then
isimek = "'ın"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "I" Then
isimek = "'ın"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "E" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "İ" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "İ" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "O" Then
isimek = "'un"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "Ö" Then
isimek = "'ün"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "U" Then
isimek = "'un"
ElseIf Trim(Mid(kelime, (Len(kelime) - 1), 1)) = "Ü" Then
isimek = "'ün"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "A" Then
isimek = "'nın"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "I" Then
isimek = "'nın"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "E" Then
isimek = "'nin"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "İ" Then
isimek = "'nin"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "U" Then
isimek = "'nun"
ElseIf Trim(Mid(kelime, (Len(kelime)), 1)) = "Ü" Then
isimek = "'nün"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "A" Then
isimek = "'ın"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "I" Then
isimek = "'ın"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "E" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "İ" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "İ" Then
isimek = "'in"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "O" Then
isimek = "'un"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "Ö" Then
isimek = "'ün"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "U" Then
isimek = "'un"
ElseIf Trim(Mid(kelime, (Len(kelime) - 2), 1)) = "Ü" Then
isimek = "'ün"
End If
End Function
hocam nasıl kullanabilirim formda yada tabloda bunu
(22/06/2017, 23:47)ozanakkaya yazdı: Merhaba, sayın @idrisyin eklediği kodun uygulanmış hali ektedir.
Hocam nasıl teşekkür edeceğimi bilemedim elinize sağlık.
ozanakkaya hocanın cevabına istinaden kodu
eklersen isimle birlikte eki de görebilirsin.
Kod:
Me.Metin9 = Me.Metin13 & isimek(Me.Metin13)
Son Düzenleme: 23/06/2017, 00:43, Düzenleyen: idrisy.
(Sebep: yazım yanlışı)
Konuyu Okuyanlar: 2 Ziyaretçi