動作検証バージョン:Windows 11 Home + 64bit Word バージョン 2404(ビルド17521.20000クイック実行)ベータチャネル
MarkdownファイルからWordファイルを作成する必要があり、見出しスタイルを適用するWordマクロを作りました。
最終的にはPandocを使う予感があるのですけれど、スタイルを作りながら作業している関係でWordマクロを作りました。
見出しスタイルを適用するサンプルマクロ
以下のWordマクロを実行すると、Markdownファイルで見出し3「### 」の設定されている段落に、Wordの見出し3スタイルが適用されます。
Sub 見出し3スタイルを設定する()
Dim par As Paragraph
For Each par In ActiveDocument.Paragraphs
If Left(par.Range.Text, 4) = "### " Then
Debug.Print par.Range.Text
par.Style = wdStyleHeading3
End If
Next
End Sub
Dim par As Paragraph
For Each par In ActiveDocument.Paragraphs
If Left(par.Range.Text, 4) = "### " Then
Debug.Print par.Range.Text
par.Style = wdStyleHeading3
End If
Next
End Sub
サンプルマクロで行っている処理
拙著『Excel VBAユーザーのためのWord VBA入門(1): Document・Range・Selectionの基本編』の、[6-2. ParagraphsからParagraphを取得する]でも使用しているFor Each~Nextループで、アクティブなWord 文書の全段落から順番にParagraphオブジェクトを取得して、
Dim par As Paragraph For Each par In ActiveDocument.Paragraphs
段落の先頭4文字が「### 」だったときに、
If Left(par.Range.Text, 4) = "### " Then
WdBuiltinStyle列挙型に定義されている定数wdStyleHeading3を指定することで、
見出し3スタイルを設定しています。
par.Style = wdStyleHeading3
見出しを適用する処理としては不要ですが、確認のために見出しを適用した段落の文字列をイミディエイトウィンドウに出力する処理も入れています。
Debug.Print par.Range.Text
[スポンサードリンク]
Home » ワードマクロ・Word VBAの使い方 » スタイル » 見出しスタイルを適用するWordマクロ