VBA: написание предложений по правописанию рядом с ошибками правописания в Word - PullRequest
0 голосов
/ 27 марта 2020

В MS Word (Office для Ma c 2016, версия 15.31) я хотел бы дополнить документ пометкой орфографических ошибок и написанием первого орфографического предложения рядом с каждым словом с ошибкой: например, если в тексте написано

Я бы хотел обогатить

мне нужен результат

Я [бы] [хотел] обогатить

Я знаю, что

iErrorCnt=Doc.This.SpellingErrors.Count
For J=1 to iErrorCnt
    Selection.TypeText Text:=DocThis.SpellingErrors(J)
Next J

будет go через все орфографические ошибки, и я знаю, что

ActiveDocument.Words(1).GetSpellingSuggestions.Item(1).Name

позволяет получить первое предложение правописания для данного слова. Но как связать слово с орфографической ошибкой и предложение правописания (так как предложение правописания применяется к словам, а слова индексируются целыми числами) и как сделать так, чтобы они оба отмечались в документе?

1 Ответ

0 голосов
/ 27 марта 2020

Попробуйте:

Sub SpellCheck()
Dim Rng As Range, oSuggestions As Variant
For Each Rng In ActiveDocument.Range.SpellingErrors
  With Rng
    If .GetSpellingSuggestions.Count > 0 Then
      Set oSuggestions = .GetSpellingSuggestions
      .Text = "[" & .Text & "][" & oSuggestions(1) & "]"
    Else
      .Text = "[" & .Text & "][]"
  End If
  End With
Next
End Sub
...