スペルチェックをMS Word 2010で有効にする必要がありますので、スペルミスの下に赤い下線が表示されるようにしてください。現在のバージョンでMS Wordオートメーション:スペルチェックで赤い下線を有効にできません
私はスペルチェックを有効にするには、このことをしよう:
wordApplication.Options.CheckSpellingAsYouType = true;
wordApplication.Options.SuggestSpellingCorrections = true;
wordApplication.ActiveDocument.ShowSpellingErrors = true;
wordApplication.ActiveDocument.CheckSpelling();
私はWordを開き、「テストtexxt文字列」を入力します。その後、コードは実行されますが、何も起こりません。
"texxt"の下に下線が表示されません。
を今私は、このプロパティをチェックした場合::私はオプションに行けば、私はオプションが有効になって「入力時にスペルチェック」ことがわかり
wordApplication.ActiveDocument.SpellingErrors[0].Text
それはスペルがあったことを意味し、「texxt」が含まれます
実際にチェックされた。
はまた、私は単に同じテキストにMS Wordや種類を再起動 - 赤下線が見えるようになる:
私はまたApplication.ScreenRefreshを呼び出し、ScreenUpdatingプロパティを設定しようとしたが、これは何の影響も与えていません。
注:文書にテキストがない場合は、このコード/マクロを最初から実行します。いくつかのテキストがある場合 - それは動作します。
注2:再現する正確な手順:
スタートMS Wordの。オプションに移動し、 "入力時にスペルをチェック"を無効にします。 Wordを再起動します。テキスト以下で
Options.CheckSpellingAsYouType = true Options.SuggestSpellingCorrections = true ActiveDocument.ShowSpellingErrors = true
タイプ:
Wordを起動し、マクロの次の実行 "テストtexxt文字列を"。 Enterを押します。 (1)の.text
マクロ
のMsgBox ActiveDocument.SpellingErrors次
実行して、あなたは解決策次見つかった事故により、赤い下線
このVBAはありますか? VBAは行の最後にセミコロンを使用せず、最後の行には括弧は含まれません。これらの変更を加えてそれらのコード行を実行すると、texxtに下線が引かれ、スペルチェックダイアログボックスが表示され、変更についての質問が表示されます。コードを実行するとエラーは発生しません。 – Christina
これはC#です。しかし、私はVBAにも同じ問題があります。ドキュメントにテキストが含まれている場合にのみ動作しますが、空で、このマクロは最初に実行されます。私はsoemthingを入力し始めます - 私は赤い下線を見ません。 – Oleg
私は実際にあなたが得ているものを再現することができないので、答えとして投稿したくありません。しかし、私はあなたのマクロを実行した後にそれを発見したWordはまだ簡単なエラーを自動修正します。 Application.AutoCorrect.ReplaceTextFromSpellingChecker = False という行が追加され、赤い線が表示されました。 – Christina