Можно ли это сделать? Я думаю, что стандартная автозамена работает только на целые слова ...
2 ответа
1
Одно из решений: wdKeyE
к следующему макросу
Sub my_e()
Select Case (Selection.Previous(wdCharacter, 1))
Case "a"
Selection.TypeBackspace
Selection.TypeText ChrW(228)
'other cases, as desired
Case Else
Selection.TypeText "e"
End Select
End Sub
Связывание ключей можно выполнить с помощью:
KeyBindings.Add KeyCategory:=wdKeyCategoryMacro, Command:="my_e", KeyCode:=wdKeyE
И обязательный
Sub e_unbind()
Dim cmds As Variant
Dim bind As KeyBinding
For Each bind In Application.KeyBindings
If bind.KeyCategory = wdKeyCategoryMacro Then
cmds = Split(bind.Command, ".")
If cmds(UBound(cmds)) = "my_e" Then bind.Clear
End If
Next
End Sub
...До сих пор хорошо работает
0
Поскольку это было перенесено в SuperUser, представляется разумным включить некоторые комментарии в качестве ответа.
@Otaku отметил, что комбинация клавиш создаст требуемый акцент, на основе этого комментария я нашел список, в котором подробно описаны акценты, которые можно добавлять с помощью сочетаний клавиш и раскладки клавиатуры на английском или американском языках. Это помимо акцентов, которые могут быть получены с помощью Alt Gr.