質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Word

Microsoft WordはMicrosoftが開発した業務用の文書生成用のソフトウェアです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

検索

検索は、あるデータの集まりの中から 目的のデータを見つけ出すことです。

Q&A

1回答

1826閲覧

Word VBAのFindメソッドで「メイン文書」を選択した状態にしたい

Hayakawa-08

総合スコア0

VBA

VBAはオブジェクト指向プログラミング言語のひとつで、マクロを作成によりExcelなどのOffice業務を自動化することができます。

Word

Microsoft WordはMicrosoftが開発した業務用の文書生成用のソフトウェアです。

マクロ

定義された処理手続きに応じて、どのような一連の処理を行うのかを特定させるルールをマクロと呼びます。

検索

検索は、あるデータの集まりの中から 目的のデータを見つけ出すことです。

0グッド

0クリップ

投稿2021/06/03 20:50

Word VBAのFindメソッドで「メイン文書」を選択した状態にしたい

今以下のようなコードを作っています。
目的は、青字の箇所をすべて選択した状態にすることです。
しかし、このコードだと飛び飛びの青字箇所を一箇所ずつ選択することになっており(つまり「次へ検索」と同じ状態)、目的が果たせておりません。高度な検索の、メイン文書をクリックしたときと同じような挙動にしたいのです。
なにかプロパティの設定で変更が必要なのでしょうか?
それとも、Findメソッドではそういった機能はないのでしょうか。色々調べたのですがわかりませんでした。
どなたか分かる方がいらっしゃれば助けていただけないでしょうか。よろしくお願いいたします。

現在のコード

Sub 青字検索()
Selection.Find.ClearFormatting
Selection.Find.Font.Color = 126111584
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = True
.MatchCase = False
.MatchWholeWord = False
.MatchByte = False
.MatchAllWordForms = False
.MatchSoundsLike = False
.MatchWildcards = False
.MatchFuzzy = True
End with
Selection.Find.Execute
End sub

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

高度な検索の、メイン文書をクリックしたときと同じようなにしたいのです。

メイン文書をクリックすると検索する機能は Microsoft Word にはなかったと思います、が、

「次へ検索」ではない方法の検索というのでしたら、ドキュメント内で検索ワードに該当したもの(hit したもの)を強調表示することを期待されているのではないでしょうか?

もし、検索でヒットしたものを強調表示させたいのでしたら、文字通り HitHighlight メソッドが用意されいます。

Office VBA リファレンス Find.HitHighlight メソッド (Word)

下記のサイトで、解説付きで例が用意されています。

みんなのワードマクロ:選択されている文字列を、Word文書内で強調表示するWordマクロ

Sub Text_HitHighLight_2()   '選択中の文字列を文書中で強調表示   With ActiveDocument.Content.Find     .ClearHitHighlight     .HitHighLight FindText:=Selection.Text, _            HighlightColor:=wdColorYellow, _            TextColor:=wdColorRed   End With End Sub

投稿2021/06/04 02:34

Yoshi88

総合スコア623

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hayakawa-08

2021/06/04 11:56

ご回答ありがとうございます。 いえ、下記のリンクにあるように、書式を設定してからメイン文書をクリックすると、条件に合う書式の文字列が一気に選択できる機能がございます。 https://www.wordvbalab.com/word/612/ 私がコードで実現したい機能もこの機能です。もしご存知でしたらご教示いただけますでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問