特許明細書の段落番号をフィールドコードで入力するマクロ(その2) | みんなのワードマクロ

みんなのワードマクロ

ワードマクロで、文書作成とオフィス事務を効率化!!

特許明細書の段落番号をフィールドコードで入力するマクロ 」での日本語の段落番号に続き、英語の段落番号です。


▼このマクロでできること
英文特許明細書の段落番号を入力します。

以下のように、フィールドで段落番号が記載されていると想定します。

[0021] aiueo
|[0022] sasisuseso

ベタな例ですが、kakikukekoが抜けたので、22段落を追加します。

カーソルを上記の赤い部分においてマクロを実行します。

[0021] aiueo
[0022]|
[0023] sasisuseso

となります。


▼マクロの解説
前回の日本語の段落番号と違って、今回は半角数字です。

マクロ中のフィールドコードは、文書中にフィールドを入力するときと同じものを使えますので、お試し下さい。

なお、今気がついたのですが、以下のマクロで入力したものをフィールドコードを表示させると、

SEQ ParaEN \# "[0000]" \* SBCHAR \* MERGEFORMAT \* MERGEFORMAT

こんなふうになっていました。

ちなみに、マクロでは、以下のように入力しています。

SEQ ParaEN \# "[0000]" \* SBCHAR \* MERGEFORMAT

つまり、 \* MERGEFORMAT が追加されているのです!!

でも、フィールドコードを編集して上記の記載のようにしても同じように機能します。

この\* MERGEFORMAT というのは、フィールドが更新された後でも、実行結果に設定されている書式をそのまま保存するためのスイッチです。

マイクロソフト サポート オンラインの説明

ひとまず、実害はなさそうであり、動くのでそのままにしておきます(笑)が、理由がわかったらまた報告いたします。

青文字で、フィールドコードの更新をしています。
赤文字で、改行を入力しています。

なお、段落番号が確定したら、以下の記事で紹介したマクロで、フィールドの数字を通常の文字列(自動で変更されない文字)に変換できます。

【1行マクロ】文書中の全てのフィールドコードを文字列に変換する


▼マクロ
Sub 英語段落挿入()
  Selection.Fields.Add _
    Range:=Selection.Range, _
    Text:="SEQ ParaEN \# ""[0000]"" \* SBCHAR \* MERGEFORMAT"
  ActiveDocument.Fields.Update
  Selection.InsertParagraphAfter
End Sub



▼関連記事
特許明細書の段落番号をフィールドコードで入力するマクロ

【1行マクロ】文書中の全てのフィールドコードを文字列に変換する

マクロコードの登録方法

ツールバーのボタン登録