動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン2207 ビルド15427.20210 Microsoft Store)
「wordvba 選択されている文」
という検索キーワードでアクセスがありました。
Word VBAで、選択されている文・センテンスを取得するにはどのようなコードを書けばいいのかを探していらしたのでしょうか。
選択されている文・センテンスを順番に取得するサンプルマクロ
Word文書の一部を選択しておいてから以下のWordマクロを実行すると、選択されている文・センテンスの文字列が順番にメッセージボックスに表示されます。
Sub 選択されている文を順番に取得する()
Dim rng As Range
For Each rng In Selection.Sentences
MsgBox rng.Text
Next
End Sub
Dim rng As Range
For Each rng In Selection.Sentences
MsgBox rng.Text
Next
End Sub
拙著『Excel VBAユーザーのためのWord VBA入門(1)』でも解説しているとおり、Sentencesプロパティで取得できる、文・センテンスを表すSentencesコレクションの要素オブジェクトは、文字列範囲を表すRangeオブジェクトです。
そのため、
Dim rng As Range For Each rng In Selection.Sentences
といったFor Each~Nextループにしています。
選択されている文字列を取得したいのなら
「wordvba 選択されている文」
とのことですが、選択されている文字列を取得したかっただけの可能性もあると考えています。
選択されている文字列を取得するだけなら、以下のようなWordマクロで済んでしまいます。
Sub 選択されている文字列を取得する()
MsgBox Selection.Text
End Sub
MsgBox Selection.Text
End Sub
最終更新日時:2022-08-27 15:00
[スポンサードリンク]
Home » ワードマクロ・Word VBAの使い方 » 文・センテンス » 選択されている文・センテンスをWord VBAで取得する