1

Тема: Замена латинских букв на русские согласно клавиатуре

Можно ли в выделенной части текста заменить латинские символы на русские с той же клавиши? Т.е. q на й, w на ц, . на ю и т.д.

2

Re: Замена латинских букв на русские согласно клавиатуре

Если без учёта регистра, тогда так:

Sub KeyboardTranslit()
  Const Lat = "qwertyuiop[]asdfghjkl;'zxcvbnm,./"
  Const Rus = "йцукенгшщзхъфывапролджэячсмитьбю."
  Dim i As Integer
  For i = 1 To Len(Lat)
    With Selection.Find
      .ClearFormatting
      .Replacement.ClearFormatting
      .Text = Mid(Lat, i, 1)
      .Replacement.Text = Mid(Rus, i, 1)
      .Execute Replace:=wdReplaceAll
    End With
    DoEvents
  Next
End Sub
Лучше день потерять — потом за пять минут долететь!

3

Re: Замена латинских букв на русские согласно клавиатуре

Большое спасибо! Обзовите меня как угодно, но что с этим делать?

4

Re: Замена латинских букв на русские согласно клавиатуре

А какой ответ вы хотели получить?

Лучше день потерять — потом за пять минут долететь!

5

Re: Замена латинских букв на русские согласно клавиатуре

fasheta пишет:

... но что с этим делать?

Создайте макрос с этим текстом,  а потом выполните его.

6

Re: Замена латинских букв на русские согласно клавиатуре

Я догадался, что это макрос для word, только я им (word) ни разу не пользовался. Но все получилось! Спасибо!