Excel’de Visual Basic for Applications (VBA) kullanarak bir sütundaki Türkçe karakterleri İngilizceye çevirebiliriz.
Bunun için bir VBA Makrosu oluşturacağız. Aşağıdaki adımları izleyin:
- Excel’de, üzerinde çalıştığınız çalışma kitabını açın.
- ALT + F11 tuşlarına basarak VBA Editor’ünü açın.
- Sol üst köşede “Insert” (Ekle) menüsünü tıklayın ve “Module” (Modül) seçeneğini seçin. Bu, yeni bir VBA modülü oluşturur.
- Aşağıdaki kodu yeni oluşturulan modülün içine yapıştırın:
Sub ConvertTurkishCharacters()
Dim rng As Range
Dim cell As Range
' Your data range - update to the range that suits you
Set rng = ThisWorkbook.Worksheets("Sayfa1").Range("A1:A850")
For Each cell In rng
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ç", "c")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ğ", "g")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ı", "i")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ö", "o")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ş", "s")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "ü", "u")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "Ç", "C")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "Ğ", "G")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "İ", "I")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "Ö", "O")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "Ş", "S")
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, "Ü", "U")
Next cell
End Sub
Bu kod, belirtilen hücre aralığındaki (bu örnekte “Sheet1” sayfasındaki A1:A100 hücreleri) tüm Türkçe karakterleri İngilizce karşılıklarıyla değiştirir.
- Hücre aralığınızı belirtin. Bu örnekte “Sheet1” sayfasındaki “A1:A100” aralığı kullanıldı. Ancak siz, kendi ihtiyaçlarınıza göre bu aralığı güncellemelisiniz.
- F5 tuşuna basarak veya “Run” (Çalıştır) butonunu tıklayarak makroyu çalıştırın.
Bu adımların sonunda, belirttiğiniz hücre aralığındaki tüm Türkçe karakterler İngilizce karşılıklarıyla değiştirilmiş olacaktır.
Aşağıdaki Visual Basic for Applications (VBA) makrosu, Excel’deki bir sütundaki metni önce küçük harflere çevirir ve ardından Türkçe karakterleri İngilizceye çevirir.
Sub ConvertToLowerAndReplaceTurkishCharacters()
Dim rng As Range
Dim cell As Range
‘ Update to the range that suits you
Set rng = ActiveSheet.Range(“A:A”)
For Each cell In rng
‘ Convert to lowercase
cell.Value = LCase(cell.Value)
‘ Replace Turkish characters with English characters
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ç”, “c”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ğ”, “g”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ı”, “i”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ö”, “o”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ş”, “s”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “ü”, “u”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “Ç”, “C”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “Ğ”, “G”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “İ”, “I”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “Ö”, “O”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “Ş”, “S”)
cell.Value = Application.WorksheetFunction.Substitute(cell.Value, “Ü”, “U”)
Next cell
End Sub