Word VBA

ワード・マクロ(VBA)の活用6
■ 法文書式設定マクロ

1 法律文書の書式

(1) Wordを利用して法律文書等(裁判関係文書,法律論文,レポート等)を作成する場合,その標準的な書式は,次のようなものと思われる。
 裁判所に提出する裁判関係文書では,これが標準書式とされている(日本弁護士会Webサイト:「裁判文書A4版化書式」) 。
 用 紙 A4版
 印刷向き 縦,横書き
 文字数,行数 1行: 37字, 1頁: 26行
 フォント 日本語用フォント : MS明朝
 英数字用フォント :(日本語用と同じフォント)
 フォントスタイル 標準
 フォントサイズ 12ポイント
 余 白  上部35ミリ,下部27ミリ,左部30ミリ,右部15〜20ミリ

 行数や文字数,フォントサイズは,文書の読みやすさを考えたものであり,文字の「MS明朝体」使用も,等幅の文字の方が整然として綺麗に見えるからであろう。ビジネス向きの文書では,本文の内容に意味があり,種々文字を飾り立て強調するようなことは,通常行われない。余白の上部は捨て印や受付印,決裁判の押捺範囲として,左部は左綴じ書類の綴じ代として,下部はページ数の記入箇所を考慮に入れてなど,長年の文書処理の便宜と慣行を基に,標準的なレイアウトとして定着しているものである。

(2) こうした書式でWordを利用して法律文書を作成する場合,Wordでは,その法文書式は, 「ページ設定」により,その設定を行う。
(ここでは,Word2003に基づいて解説する。Word2007,2010は,仕様内容が若干異なる。)

(3) その具体的な方法は,次のような手順と作業を要するものである。
 なお,下線部分が必須の設定部分で,ユーザーが何も操作や設定をしない場合には,あらかじめ組み込まれた初期設定値(デフォルト値(既定値))が設定されるようになっている。
 この設定をした経験のある人であれば,次の内容は改めて読むまでもない。

 メニューバーの「ファイル」,「ページ設定」を選択し,現れた「ページ設定」のダイアログボックスで,書式を設定する。

(1)文字数,行数の設定
 「文字数と行数」のタブを選択してクリック。
 「文字方向」欄で,「横書き」の設定を確認し,
 「文字数と行数の指定」欄で,「文字数と行数を指定する」にチェック印を付し,
 「文字数」欄に「37」,「行数欄」に「26」を設定する。

(2)フォントの設定
 次に,その下にある「フォントの設定」ボタンをクリックし,
現れた「フォント」のダイアログボックスで,
 「日本語用のフォント」欄に「MS明朝」を,
 「英数字用のフォント」欄に「(日本語用と同じフォント)」を,それぞれリストから選択設定し,
 「スタイル」欄に「標準」,「サイズ」欄に「12」と,これもリストから選択設定し,
 その他の設定項目については何も設定せず,
「OK」ボタンをクリックし,フォントのダイアログボックスを閉じる。

(3)余白の設定
 元の「ページ設定」のダイアログボックスに戻り,
 余白のタブをクリックし,
 余白の上部欄に「35mm」,下部欄に「27mm」,
 左部欄に「30mm」,右部欄に「20mm」を設定し,
 とじしろの欄は,「0mm」「左」の設定のまま,
 印刷の向きは「縦」を確認する。

 下部の「OK」をクリックすると,ダイアログボックスが閉じられ,「ページ設定」を終了する。


2 「法文ページ設定」ボタン化への途

(1) 新規文書を作成する都度,以上の手順を踏んで「ページ設定」をするのも面倒である。
 この場合,Wordの「ページ設定」ダイアログボックスの「既定値として設定」する方法もあるが,他の書式でページ設定をした後に,法文ページ設定に変更し直す場合,すぐ切り替えることは難しい。

(2) この法律文書の標準書式がボタン1つで一括自動設定される「法文ページ設定」のマクロがあれば,便利で楽である。
 多くの人が法律文書を作成する場合,作成のツールはWord1つ,書式もほぼ1つに標準化されている。これを前提に考えれば,何千人,何万人の人が,それぞれに同じように書式設定の作業をしていたのでは,時間,労力の無駄が大きすぎる。
 事務所なり事業所なり組織単位で書式設定は統一し,マクロを組んでおき,ボタン1つで簡単にできた方が,はるかに効率的で,書式の統一も容易である。

(3) マクロは,自動処理プログラムであり,人間の同じ動作の反復作業を一括して自動処理してくれる。文書作業の効率化,事務の改善を唱えるのであれば,これを使わない手はない。

 以下では,簡単に「法文ページ設定」ができる方法を紹介してみたい。


3 法文ページ設定のマクロの作り方

(1) 「法文ページ設定」マクロの利用

 1つの方法は,「法文ページ設定」のマクロを作成し,これを必要の都度,指定して呼び出し,利用する方法である。
 以下は,その作成の方法である。

 ア マクロの作成
 まずは,Wordを立ち上げ,メニューバーの「マクロ」→「マクロ」をクリックし,現れた「マクロ」ダイアログボックスで,
 「マクロの保存先」を「作業中のすべての文書とテンプレート」とした上で,マクロ名を「法文ページ設定」と入力し,「作成」ボタンをクリックする。

 「標準モジュール」の中に,次の内容が自動表示される。
Sub 法文ページ設定()
'
' 法文ページ設定 Macro
' 作成日 2012/**/** 作成者 *****(ユーザー名)
'

End Sub

 「Sub マクロ名()」に始まり「End Sub」で終わる部分は,「プロシージャ」と呼ばれることは前述した。
 「Sub 法文ページ設定()」と「End Sub」との間にはマクロで実行される「処理手続」の内容が記入される。
 冒頭が「’」で始まる行は,コメント(注釈)であり,マクロの実行とは関係ない。
 モジュール(Module)とは構成部分の意味であるが,「標準モジュール」というのは,プロシージャ(処理手続)を多数記述した収納場所だといってもよい。

 イ 法文ページ設定のマクロ
 作成日の下の注釈「'」の次の行以下,「End Sub」との間には,マクロの「処理手続」として,このページ末尾の枠線内のマクロ内容(黒字部分)を全部コピーし,貼り付ける。その内容は,前記の法文書式の「ページ設定」マクロである。

 この内容は,メニューバーの「ツール」−「マクロ」で,「新しいマクロの記録」により,実際にページ設定の手順で作成されたマクロの内容から,法文ページ設定に必要な部分だけを抜粋して作成したものである。
Sub 法文ページ設定()
'
' 法文ページ設定 Macro
' 作成日 平成24年*月*日 作成者 (ユーザー名)
'
この部分に「処理手続」を記入する

End Sub

 マクロとは,コンピュータに自動処理させるため,「何を」,「どうするか」の手順を書いたプログラムである。マクロの中で表示される「=」記号は,特定の左辺(何を)に,右辺(どうする)の値を代入して,処理させるという意味である。
 少し英語の分かる人であれば,その内容を1行1行たどってみれば,フォントの名前には「MS明朝」を代入し,そのサイズには「12」を代入し,・・・という具合に,数値などにより細かく書式が設定されていく,処理手続の流れが分かる。

 いきなり長い処理手続をコピーして貼り付けると言っても不安だという向きには,次のような内容で,試しに作って実行してみるとよい。 「msgbox("マクロの道も一歩から")」と記入してやるだけである。
Sub 法文ページ設定()
'
' 法文ページ設定 Macro
' 作成日 平成24年*月*日 作成者 (ユーザー名)
'
msgbox("マクロの道も一歩から")

End Sub

 その実行結果は,「マクロの道も一歩から」と,メッセージを表示させるというものである。

 ウ 「法文ページ設定」のマクロの実行
 ここで作成したマクロを実行するためには,Wordのメニューバーの「ツール」−「マクロ」をクリックして現れる前記のマクロ画面から,「法文ページ設定」のマクロを選択指定し,「実行」ボタンをクリックして実行する。

 実行ボタンを押した途端に処理がされたのでは不安の向きもあるので,まずは「法律文書の書式設定をするか否か」と,事前に実行するか否かを問うメッセージを表示させ,「もし,それが選択されたのであれば」,その時は実行する,というようにしている。

 ここで「マクロ」と言っているが,この「もし・・・であれば」の部分は,「If 〜 Then」の部分であるが,これらの部分は,マクロというより,VBA(Visual Basic for Applications)で組み立てられた部分である。厳密に言えば,マクロは,単一方向の処理手続の流れでしかないが,VBAは,これに対し,処理を一定の条件にかからせたり(場合分け),処理の流れを反復(繰り返し処理)させたりと,よりきめ細かく複雑な処理をコントロールして実行させることができるプログラムであるという違いがある。

 これを実行すれば,次の選択画面が表示されるので,もし,その内容でよければ「OK」ボタンをクリックする。実行しないのであれば,「キャンセル」ボタンをクリックすればよい。
 「OK」ボタンのクリックにより,前記の法律文書の標準書式としての「ページ設定」が自動的に行われる。

 間違いなくその実行結果が得られたかは,Wordのメニューバーの「ファイル」−「ページ設定」で現れる「ページ設定」ダイアログボックスの表示内容で確認できる。

 しかし,この方法の難点の1つは,多くのマクロが保存されている場合には,必要な都度マクロ画面を開きマクロを選択指定して実行していたのでは面倒だという点である。
 これに対し,使用頻度の高いマクロを利用する方法として,ツールバー上にボタンを設置しておき,このボタン一押しでマクロが実行されるようにする方法が考えられる。
 その方法は,次回に取り上げることにする。



法文ページ設定プロシージャの内容

Sub 法文ページ設定()
' 法文ページ設定 Macro
' 作成日 平成24年*月*日 作成者 (ユーザー名)
'

Dim WD As String
Dim Res As String

WD = ""
WD = WD & "次のとおり標準設定にしますか。" & vbCr
WD = WD & vbCr & "[ok]ボタンにより,自動設定します。"
WD = WD & vbCr & "----------------------------"
WD = WD & vbCr & "A4判横書き"
WD = WD & vbCr & " 1行37文字  行数26"
WD = WD & vbCr & " フォント MS明朝" & " 12ポイント" & vbCr
WD = WD & vbCr & " 余白 上端35o,下端27o"
WD = WD & vbCr & " 左側30o,右端20o" & vbCr
Res = MsgBox(WD, vbOKCancel, "書式設定")

If Res = vbCancel Then
Exit Sub
End If

With ActiveDocument.Styles(wdStyleNormal).Font
.NameFarEast = "MS 明朝"
.NameAscii = "MS 明朝"
.NameOther = "Century"
.Name = "MS 明朝"
.Size = 12
.Bold = False
.Italic = False
.Underline = wdUnderlineNone
.UnderlineColor = wdColorAutomatic
.StrikeThrough = False
.DoubleStrikeThrough = False
.Outline = False
.Emboss = False
.Shadow = False
.Hidden = False
.SmallCaps = False
.AllCaps = False
.Color = wdColorAutomatic
.Engrave = False
.Superscript = False
.Subscript = False
.Spacing = 0
.Scaling = 100
.Position = 0
.Kerning = 1
.Animation = wdAnimationNone
.DisableCharacterSpaceGrid = False
.EmphasisMark = wdEmphasisMarkNone
End With

With ActiveDocument.PageSetup
.LineNumbering.Active = False
.Orientation = wdOrientPortrait
.TopMargin = MillimetersToPoints(35)
.BottomMargin = MillimetersToPoints(27)
.LeftMargin = MillimetersToPoints(30)
.RightMargin = MillimetersToPoints(20)
.Gutter = MillimetersToPoints(0)
.HeaderDistance = MillimetersToPoints(15)
.FooterDistance = MillimetersToPoints(17.5)
.PageWidth = MillimetersToPoints(210)
.PageHeight = MillimetersToPoints(297)
.FirstPageTray = wdPrinterDefaultBin
.OtherPagesTray = wdPrinterDefaultBin
.SectionStart = wdSectionNewPage
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.VerticalAlignment = wdAlignVerticalTop
.SuppressEndnotes = False
.MirrorMargins = False
.TwoPagesOnOne = False
.GutterPos = wdGutterPosLeft
.CharsLine = 37
.LinesPage = 26
.LayoutMode = wdLayoutModeGrid
End With

End Sub


2010.7.19 〜2012.2.15
|
TOP
|
[ HOME ]