「ワードvba スタイル取得」
「word vba スタイル名取得」
といった検索で、このサイト『インストラクターのネタ帳』へのアクセスが、時折あることに気づきました。
Wordのスタイルやスタイル名を取得するVBAのコードを探していた方による検索です。
カーソル位置のスタイル名を取得するサンプルマクロ
これらの検索キーワードだけでは具体的に何がしたかったのかがわかりませんので、参考になるかもしれないシンプルなマクロをご紹介しておきます。
MsgBox Selection.Style.NameLocal
End Sub
上記のようなコードで、カーソルのある位置のスタイル名がメッセージボックスに表示されます。
標準スタイルにカーソルがあれば「標準」見出し1スタイルにカーソルがあれば「見出し1」とメッセージボックスに表示されます。
サンプルマクロの解説
オブジェクトブラウザーで、[完全に一致する単語だけを検索]する設定にして、Wordライブラリに限定して「style」を検索すると、以下のような結果となります。
Styleオブジェクトが存在していること、複数のオブジェクトにStyleプロパティが存在していることがわかります。
上記のマクロでは、この中のSelectionオブジェクトに用意されているStyleプロパティを使用しています。
オブジェクトブラウザーで確認するとわかるとおり、NameLocalプロパティはStyleオブジェクトのデフォルトプロパティですから、
NameLocalを省略した、
MsgBox Selection.Style
というコードでも、スタイル名をメッセージボックスに表示させられますが、可読性を考えると上記のマクロのとおり、
MsgBox Selection.Style.NameLocal
としておくほうがイイと私は感じます。
最終更新日時:2022-02-16 11:30
Home » ワードマクロ・Word VBAの使い方 » スタイル » Word VBAでカーソル位置のスタイル名を取得