Replace Komutu

Katılım
5 Ocak 2009
Mesajlar
1,586
Excel Vers. ve Dili
2003 Türkçe
Selam Arkadaşlar,
aşağıdaki kodlar ile türkçe karakter içeren metinleri "replace" komutu ile çeviriyorum. iç içe replace komutu kullanak yerine alternatif yöntemler var mıdır?
Şimdiden çok teşekkür ederim.

Kod:
Sub replace_ozellik() 'Türkçe  karakterler içeren metinleri değiştirir
Dim deger1
Dim deger2

deger1 = "çÇ ğĞ ıİ  öÖ şŞ üÜ" 'türkçe Karakterler ve boşluklar

deger2 = Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(Replace(deger1, "ç", "c"), "Ç", "C"), "ğ", "g"), "Ğ", "G"), "ı", "i"), "İ", "I"), "ö", "o"), "Ö", "O"), "ş", "s"), "ü", "u"), "Ü", "U"), " ", "-")

MsgBox deger2

End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,175
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Eski_Karakter As Variant, Yeni_Karakter As Variant, X As Byte
On Error GoTo Son
Eski_Karakter = Array("ç", "Ç", "ğ", "Ğ", "ı", "İ", "ö", "Ö", "ş", "Ş", "ü", "Ü")
Yeni_Karakter = Array("c", "C", "g", "G", "i", "I", "o", "O", "s", "S", "u", "U")
For X = 0 To UBound(Eski_Karakter)
Application.EnableEvents = False
Target = Replace(Target, Eski_Karakter(X), Yeni_Karakter(X))
Application.EnableEvents = True
Next
Son: Application.EnableEvents = True
End Sub
 
Katılım
5 Ocak 2009
Mesajlar
1,586
Excel Vers. ve Dili
2003 Türkçe
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Eski_Karakter As Variant, Yeni_Karakter As Variant, X As Byte
On Error GoTo Son
Eski_Karakter = Array("ç", "Ç", "ğ", "Ğ", "ı", "İ", "ö", "Ö", "ş", "Ş", "ü", "Ü")
Yeni_Karakter = Array("c", "C", "g", "G", "i", "I", "o", "O", "s", "S", "u", "U")
For X = 0 To UBound(Eski_Karakter)
Application.EnableEvents = False
Target = Replace(Target, Eski_Karakter(X), Yeni_Karakter(X))
Application.EnableEvents = True
Next
Son: Application.EnableEvents = True
End Sub
Bana lazım olan bu değildi. Ancak çok güzel olmuş. Ellerinize sağlık.
 
Üst