Wordの差し込み印刷で日付が数字になる・金額のカンマが消える|症状別コピペで直す書式スイッチ5つ
Excelの一覧からWordで差し込み印刷すると、日付が「45900」や英語順になる、金額の¥やカンマが消える、郵便番号の先頭の0が消える。原因はWordが「値」しか受け取らないことです。この記事では、Alt+F9でフィールドコードを開き、症状別にコピペで貼れる書式スイッチ(\@・\#)5つを表で解説します。
差し込み印刷の設定は終わった。プレビューを見たら、請求日が「45900」になっている。金額は「120000」でカンマがない。Excelではちゃんと「2026年9月10日」「¥120,000」と表示されていたのに。
Excelの一覧からWordへ差し込み印刷をしていると、設定は合っているのに見た目だけおかしい、という壁に必ず一度ぶつかります。毎月、出力してから手で直しているなら、その15分は今日でなくせます。
原因はひとつで、WordはExcelから「値」だけを受け取り、表示形式(書式)は受け取らないからです。だからWord側で「この値をこう表示して」と指定する必要があります。それが書式スイッチで、症状ごとにコピペで貼れます。
この記事では、症状別のスイッチ5つと、貼っても直らないときの3つの確認を、請求書の例でまとめます。
この記事でわかること
- 日付・金額・郵便番号が崩れる原因(Wordは値だけ受け取る)
- Alt+F9 でフィールドコードを開き、スイッチを足して戻す、の3手順
- 症状別にコピペで貼れる書式スイッチ5つ(日付・和暦・カンマ・¥・郵便番号)
結論:Alt+F9 で開いて、スイッチを足して、Alt+F9 で戻す
やることは3手順です。
- Word で Alt+F9 を押す(Macは fn+option+F9)。差し込みフィールドが
{ MERGEFIELD 請求日 }のようなコードで表示される - フィールド名の後ろに、症状に合ったスイッチを足す。例:
{ MERGEFIELD 請求日 \@ "yyyy年M月d日" } - もう一度 Alt+F9 で表示を戻し、F9 でプレビューを更新する
| 症状 | 貼るスイッチ |
|---|---|
| 日付が数字や英語順になる | \@ "yyyy年M月d日" |
| 和暦にしたい | \@ "ggge年M月d日" |
| 金額のカンマが消える | \# "#,##0" |
| ¥を付けたい | \# "¥#,##0" |
| 郵便番号の先頭の0が消える | Excel側で文字列にする(後述) |

なぜ崩れるのか:Wordは「値」だけを受け取る
Excelのセルには「値」と「表示形式」の2つがあります。「2026/9/10」と見えているセルの中身は、実は 45900 という数字(1900年1月1日から数えた日数)で、「日付として表示する」という表示形式がかぶさっています。金額の「¥120,000」も、中身は 120000 で、¥とカンマは表示形式です。
差し込み印刷でWordが受け取るのは、この中身の値だけです。表示形式は来ません。だから、
- 日付は 45900 のような数字や、
9/10/2026のような英語順で出る - 金額は 120000 で、¥もカンマも消える
- 郵便番号の 0123456 は、数字として扱われて先頭の 0 が落ちる
という症状になります。Word側で「値をこう表示して」と指定するのが、書式スイッチです。
昔の解決策「DDE接続」について
古いWordでは、データの読み込み方式を「DDE」に切り替えるとExcelの表示形式がそのまま来ました([ファイル]→[オプション]→[詳細設定]→「文書を開くときにファイル形式を確認する」)。今のWordでも使えますが、接続が不安定になりやすく、Macでは選べません。書式スイッチで直すほうが確実で、どのバージョンでも動きます。
基本操作:フィールドコードの表示と、スイッチの書き方
Alt+F9 で「コード」を表示する
差し込みフィールドは、ふだん «請求日» のように見えています。Alt+F9 を押すと、文書内のすべてのフィールドが { MERGEFIELD 請求日 } というコード表示に切り替わります。もう一度押すと戻ります。
1つのフィールドだけ切り替えたいときは、そのフィールドをクリックして Shift+F9 です。

スイッチの型は2つだけ
\@ "……":日付・時刻の書式(@ は「日付」と覚える)\# "……":数値の書式(# は「数字」と覚える)
フィールド名の後ろに半角スペースを空けて、スイッチと " で囲んだ書式を書きます。{ } の波かっこはキーボードで打たないでください。コード表示のまま、既存の { MERGEFIELD 請求日 } の中に文字を足すだけです。
編集が終わったら Alt+F9 で戻し、F9 でフィールドを更新するとプレビューに反映されます。
症状別コピペ表:5つの型
| 症状 | 原因 | 貼るコード(例) | 出力 |
|---|---|---|---|
| 日付が「45900」や「9/10/2026」になる | 日付の値だけが来ている | { MERGEFIELD 請求日 \@ "yyyy年M月d日" } | 2026年9月10日 |
| 和暦で出したい | 同上 | { MERGEFIELD 請求日 \@ "ggge年M月d日" } | 令和8年9月10日 |
| 金額のカンマが消える | 数値の値だけが来ている | { MERGEFIELD 金額 \# "#,##0" } | 120,000 |
| ¥を付けたい | 同上 | { MERGEFIELD 金額 \# "¥#,##0" } | ¥120,000 |
| 小数点以下が「.0」で出る/逆に消える | 同上 | { MERGEFIELD 単価 \# "#,##0" }(整数)/\# "#,##0.00"(2桁固定) | 1,500/1,500.00 |
日付の書式は、Excelの表示形式とほぼ同じ書き方です。
yyyy:西暦4桁M:月(1〜12)MM:月(01〜12)d:日dd:日(01〜31)ggg:元号(令和)e:元号の年 →ggge年で「令和8年」- 曜日を付けたい:
\@ "yyyy年M月d日(aaa)"→ 2026年9月10日(木)
月は大文字の M です。小文字の m は「分」になるので、yyyy年m月d日 と書くと月の位置に「0」が出ます。日付が変なときは、まずここを疑ってください。
郵便番号の先頭の0:Excel側で文字列にするのが確実
0123456 の先頭の 0 が落ちるのは、Wordが数値として受け取っているからです。\# "000-0000" のような数値書式で桁を補う方法もありますが、ハイフンの扱いでつまずきやすく、おすすめしません。
確実なのは、Excel側で郵便番号の列を「文字列」にしておくことです。
- Excelで郵便番号の列を選ぶ
- [ホーム]→表示形式のドロップダウン →「文字列」
- すでに 0 が落ちているセルは、
123-4567のようにハイフン付きで入力し直す(文字列なので 0 も残る)
文字列にしておけば、Wordはそのまま文字として受け取ります。電話番号(先頭が 0)も同じ理由で文字列にしておくと安全です。
直らないときの3つの確認
① F9 でプレビューを更新したか
スイッチを足しても、プレビューは自動では変わりません。フィールドを選んで F9(文書全体なら Ctrl+A → F9)で更新します。[差し込み文書]タブの「結果のプレビュー」を一度オフ→オンにしても更新されます。
② Excel側の値が「数値」か「文字列」か
\# は数値にしか効きません。Excel側の金額が文字列(セルの左上に緑の三角、左寄せ)だと、スイッチを付けても変わりません。Excelで列を選んで[データ]→[区切り位置]→「完了」で数値に直してから、もう一度差し込みます。
逆に、日付が文字列で入っている(2026/9/10 と打っただけで日付になっていない)ときは \@ が効きません。Excelでセルを日付形式にして入力し直すのが早いです。
③ 1件目だけ直って、2件目以降が直っていない
ラベルや名簿のように、1ページに複数のレコードを並べる文書では、1件目のフィールドを直しても、2件目以降には反映されません。[差し込み文書]→「複数ラベルに反映」(ラベルの更新)を押すと、1件目の設定が全レコードにコピーされます。
請求書のように1ページ1件の文書なら、フィールドは1つずつなので、この問題は起きません。
請求書での実例:4か所をまとめて整える
請求書のテンプレートで、書式が崩れやすいのは次の4か所です。まとめて直しておくと、以降は触らずに済みます。
| 場所 | フィールドコード |
|---|---|
| 請求日 | { MERGEFIELD 請求日 \@ "yyyy年M月d日" } |
| 支払期限 | { MERGEFIELD 支払期限 \@ "yyyy年M月d日" } |
| 小計・消費税・合計 | { MERGEFIELD 合計 \# "¥#,##0" } |
| 郵便番号(宛先) | Excel側で文字列。Wordはスイッチなし |
消費税の計算はWordではなくExcel側で列を作っておきます。Wordの数式フィールドでも計算はできますが、端数処理を揃えるのが面倒で、金額の確認もExcelのほうがしやすいからです。
Before / After:手作業とどれだけ変わるか
| Before(出力後に手で直す) | After(スイッチをテンプレに入れる) | |
|---|---|---|
| 毎月の作業 | 日付と金額を1件ずつ書き換え。20件で15分 | 差し込むだけ。0分 |
| ミス | 手直し漏れ・桁の打ち間違い | 起きない |
| 翌月 | また同じ手直し | テンプレートに設定が残る |
スイッチはWordのテンプレート側に保存されます。一度直せば、翌月は差し込むだけです。
まとめ
- 崩れる原因は、WordがExcelの「値」だけを受け取り、表示形式を受け取らないから
- 直し方は Alt+F9 → スイッチを足す → Alt+F9 → F9 の3手順
- 日付は
\@ "yyyy年M月d日"、金額は\# "¥#,##0"。月は大文字の M - 郵便番号・電話番号はExcel側で文字列にしておく
- 直らないときは、F9 の更新・Excel側の値の種類・複数ラベルの反映を確認する
よくある質問(FAQ)
Q1:Web版(ブラウザの)Wordでもできますか?
Web版Wordには差し込み印刷の機能がありません。デスクトップ版のWordで作業してください。作ったテンプレートをWeb版で開いても、フィールドは保持されます。
Q2:Excel側で「2026年9月10日」という文字列にしてしまえば早くない?
はい、早いです。差し込みに使う一覧を「表示専用」として割り切れるなら、Excelで =TEXT(A2,"yyyy年M月d日") の列を作り、その列を差し込むと、Word側のスイッチは不要になります。ただし、その列は日付として計算できなくなるので、元の日付列は残しておいてください。
Q3:Macでは Alt+F9 が効きません
Mac版Wordでは fn+option+F9 でフィールドコードの表示を切り替えます。効かない場合は、フィールドを右クリック →「フィールドコードの表示/非表示」でも切り替えられます。スイッチの書き方はWindowsと同じです。
Q4:和暦の元号が出ず、西暦のまま、または「g」と表示される
Wordの表示言語(編集言語)が日本語になっていないと、ggg が元号として解釈されません。[ファイル]→[オプション]→[言語]で、編集言語に日本語が入っているか確認してください。それでも出ないときは、Excel側で =TEXT(A2,"ggge年M月d日") の列を作って差し込むのが確実です。
次の一段:請求書を毎月「作る」作業そのものを減らす
書式スイッチをテンプレートに入れておけば、差し込み印刷の見た目で悩むことはなくなります。その先で「差し込み印刷の設定から見直したい」「連続でPDF保存したい」「請求書の作成そのものを自動化したい」なら、次の記事が役に立ちます。
- 差し込み印刷の設定を最初から確認したい → Word差し込み印刷で請求書を作る手順
- Excelだけで連続印刷したい → Excelマクロ入門|宛名リストから請求書を連続印刷する
- 請求書・見積書の作成そのものをツール化したい → 請求書・見積書ツールの話
毎月の請求書作成を丸ごと仕組みにしたい場合は、こちらからご相談ください。
※本記事のWord画面は、操作の流れがわかるように作成した説明用の再現イメージです。ボタンの配置や表記はお使いのバージョン(Microsoft 365・Word 2021 など)によって多少異なる場合があります。