そこで、Word2003/WindowsXP で確認してみた。
そこで、下記前提で「私ならこうするだろう」という方法を考えた。
1)データファイルに印刷用の氏名を作る
- Wordの名前
- インデントすると、姓の位置は揃うが、氏名が長いと崩れる(2行になる)ことがある。
- 下揃えすると、姓の位置が氏名の文字数で上下することになる。
この方法を補完するため、「姓と名の間に1文字の空白が入っている」前提で、Excelの氏名をマクロで次のように作り直す。(○:姓,□:空白,●:名)- ○□● → ○□□□●
- ○□●● → ○□□●●
- ○○□● → ○○□□●
- 上記以外は入力のままとする。
- Excelマクロ
- 氏名を選択後、マクロ名:印刷用氏名作成 を実行する。
- 元に戻す(姓と名の間に1文字のスペースを入れる)には、氏名を選択後、マクロ名:印刷用氏名戻し を実行する。
- Excelマクロのソース
ベストか否かは判りません。参考にしてください。- Sub 印刷時氏名作成()
For Each r In Selection t = r.Text 'セルの表示文字を保存 L = Len(t) '文字数 i = InStr(t, " ") 'スペースの位置 If i > 1 Then Select Case L Case 3 t = Left(t, i - 1) & " " & Trim(Mid(t, i)) Case 4 t = Left(t, i - 1) & " " & Trim(Mid(t, i)) End Select End If r.Value = t Next
-
- Sub 印刷時氏名戻し()
For Each r In Selection t = r.Text 'セルの表示文字を保存 t = Trim(t) '前後のスペースを取る i = InStr(t, " ") 'スペースの位置 If i > 1 Then t = Left(t, i - 1) & " " & LTrim(Mid(t, i)) End If r.Value = t Next
VBAが解れば、自分で好きなように変えればいいので、この方法がベターかも知れない。
2)表+均等割り付け
表を作成し、氏名のセルを均等割り付けする方法です。これは「はがき印刷ウィザード」の氏名を印刷する方法と同じです。
Word文書を作る方法のみです。
- Wordを起動します。
- ページ設定します。
- 例えば、A4版横+縦書き です。
- 文字数と行数の指定は、「標準の文字数を使う」がいいです。
- 2行×2列の表を挿入します。
- 任意のセルを右クリック ⇒[表のプロパティ]をクリックし、[表]タブの「右揃え」をクリックします。
- これは、表の左側に文字を入れるためです。
- 右側の列のセルを結合します。
- 右側のセルに賞状名を入力します。例えば、“皆勤症” です。
- 左側の下のセルに最大文字数の氏名を入力します。例えば、“佐々木 小次郎” です。
- 各セルの文字方向を縦にします。
- フォントおよびフォントサイズを設定します。
- セル(表)のサイズを調節します。
- ズームを[ページ全体を表示]にして、全体を見ながら調節します。
- 表の下の罫線がページぎりぎりまで大きくします。
- これを行わないと、表の左側に文字を入力できません。
- 表がページからはみ出ることがあります。サイズを調節する方法を変えてみてください。
- 氏名のセルは(最大の文字数ですから)ぎりぎりの大きさにします。
- 氏名のセルをセル選択し、[均等割り付け]します。
- フィールドを挿入する時は、“佐々木 小次郎” を選択して行います。
3)段落に均等割り付けする
上記の「表+均等割り付け」を行っている時に気が付いた方法です。
Wordで縦書き賞状が作ってある前提です。
- 氏名の行(正しくは段落)の字下げはスペースで行わずインデントで行います。(必須)
- 一時的に横書きにするとルーラーで行えます。
- ダイアログボックスで行うには、[書式]メニュー ⇒[段落]⇒[インデントと行間隔]タブの「左のインデント幅」、「右のインデント幅」で行います。
- 氏名の行を行選択し、[均等割り付け]します。
- 氏名(文字列)のみを選択し、差し込みフィールドを挿入します。
(「挿入」ですが、その前に選択しているので置換になります。)
4)フィールドコードで均等割り付けする
インターネットを検索していて見つけたすごい方法です。
Alt+F9でフィールドコート表示 {eq \o \ad({MERGEFIELD"氏名"},□□□□□□□□□)} 四角は全角スペース
ポイントは、
- フィールドコードの入力は、横書きで、フォントを拡大する前 がやり易いです。
入力には VBA の知識が必要です。 - 氏名には「プロポーショナルフォント」を使うことです。
これにより、スペースの幅が狭くなり、見た目がよくなります。
5)2〜4)のサンプルデータ
- ここからダウンロードできます。
SampleData2.zip ‥‥ 圧縮(zip形式)フォルダ
解凍すると同名のフォルダの下に次のファイルが出来ます。- 表+均等割付.doc ‥‥ Microsoft Word 文書
- 「2)表+均等割り付け」の差し込み印刷文書です。
- データファイルを選択し直す必要があります。
- 段落の均等割付.doc ‥‥ Microsoft Word 文書
- 「3)段落に均等割り付けする」の差し込み印刷文書です。
- データファイルを選択し直す必要があります。
- フィールドコード.doc ‥‥ Microsoft Word 文書
- 「4)フィールドコードで均等割り付けする」の差し込み印刷文書です。
- データファイルを選択し直す必要があります。
- 名前.xls ‥‥ Microsoft Excel ワークシート
- 上記差し込み印刷文書のデータファイルです。
- 表+均等割付.doc ‥‥ Microsoft Word 文書