研修でもご紹介をしているし、先日のイベントでお見せしたときに「やってみたい!」という方が多かったのでご紹介を。

やりたいことは、「差し込み印刷 (差し込み文書) で、関連する文字情報などとともに画像を挿入したい」です。

こんな風に↓フォルダーに保存されている画像ファイルを 1 つずつ、文書のページに差し込み、商品コードなどの文字列とともに表示したいと思っています。


Word を使って差し込み文書の作成過程で画像も挿入したいときには、差し込み文書とフィールドという機能を組み合わせて使用します。(Publisher だとそんな手間はいらない。もっと楽ちん。

そのためここでは、先に画像を文書に挿入するフィールドについて、簡単に解説してから差し込み文書の作成に進みます。
なお、長くなってしまうので差し込み文書そのものについてはあんまり細かくは書きません。

IncludePicture フィールドの利用

IncludePicture フィールドを使うと、画像をコピーして文書に貼り付けるのではなく、「ここに、この画像ファイルを挿入して、表示して」という、いわば命令のような形で文書に画像を表示できます。

  • 同じフォルダーの中に、挿入したい画像と、挿入先となる Word 文書 (*.docx) が入っている場合

  1. 文書の画像を挿入する位置にカーソルをおいて、リボンの [挿入] タブの [テキスト] グループの [クイック パーツの表示] をクリックし、[フィールド] をクリックします。


  2. [フィールド] ダイアログ ボックスの [分類] で [リンクと参照] を選択し、[フィールドの名前] で [IncludePicture] を選択します。
     
     [ファイル名または URL] に挿入したい画像ファイルの名前を入力 (もちろんコピーして貼り付けても OK) します。
     
     [文書に保存されていないデータ]、[元の画像に合わせて幅を調整する]、[元の画像に合わせて高さを調整する] の 3 つのオプションについては、手順 4. の下に記載した補足を参照してください。(ここでは 3 つともオンにしています。)
     
     [OK] をクリックします。


  3. カーソルをおいていた位置に画像が挿入され、表示されます。


  4. 挿入されている画像を選択して [Shift] キー + [F9] キーを押すと、フィールド コードが表示されて、画像ファイル名やスイッチ (\d とか ¥x とか) を確認できます。
     
     たとえば下図の場合は、「SC0001.PNG のファイルをリンクで挿入しなさい。縦横のサイズは元の画像のサイズに合わせなさい。」という意味のフィールド コードが確認でき、結果的に「SC0001.PNG」の画像が表示されています。
  •  3 つのスイッチ

 ✔ [文書に保存されていないデータ] (\d)
オンにすると画像そのものは挿入されず、パスをもとにリンク形式で図が表示される。参照先から画像ファイルが削除されたり、画像ファイルの名前が変更されたりすると、文書に図が表示されなくなる。
ただし、図が挿入されていないため、ファイル サイズを抑えられる。

オフにすると [リンク挿入] 形式となり、参照先から画像ファイルが削除されたり、画像ファイルの名前が変更されたりしても、更新を実行するまでは文書に図が表示される。ただし、図が挿入されているため、オフの場合よりもファイル サイズが大きくなる。

✔ [元の画像に合わせて幅を調整する] (\x) と [元の画像に合わせて高さを調整する] (\y)
挿入する位置 (段落) の書式等にもよるが、図の縦横比を維持して挿入したい場合に 2 つともオンにする。
  • 挿入したい画像と、挿入先となる Word 文書 (*.docx) が異なるフォルダーに入っている場合

    差し込みたい画像が保存されているフォルダーと、差し込み先となる Word 文書 (*.docx) が異なるフォルダーに格納されている場合は、[ファイル名または URL] のところにファイル名までのフルパスを記入します。


    表示結果に違いはありませんが、[Shift] キー + [F9] キーでフィールド コードを表示すると、指定したフルパスがフィールド コードの中に含まれていることを確認できます。

    ようは、同じフォルダーの中に画像と Word 文書が入っていれば画像ファイル名だけでよいけれど、そうじゃないなら場所をちゃんと指定してあげましょうね、ということです。

    なお、このとき、フィールド コードに記載されているパスの「\」は 2 つずつ指定されている、という特徴があります。

差し込み印刷と IncludePicture による画像の挿入

  • 準備するモノ
  1. 画像ファイル
    挿入する画像ファイルを 1 つのフォルダーに格納します。
    今回はデスクトップの [Demo] - [商品カタログ] - [商品画像] フォルダーに 8 つの画像ファイルを入れてあります。

    なお、このフォルダーのパスは事前に控えておいてもよいかも。後で使います。


  2. データファイル (Excel)
    今回は「カタログ データ.xlsx」というブックを用意し、「商品データ」シートに、[商品コード]、[タイトル]、[概要]、[画像] の 4 つのフィールド (列) を用意し、1 つの商品に関する情報が 1 レコード (1 行) になるようにまとめて、保存してあります。

    [画像] フィールドには、挿入する画像のファイル名を拡張子も含めて記載してあります。
    (画像ファイルのファイル名を 1 つずつ入力するのはめんどくさい!というのはわかります。Windows の Dir コマンドを使ったらできるのでその辺は別途調べてくださいませ。) 


  3. メイン文書
    画像などの差し込み先となる Word 文書を用意し、すべてのレコードで共通で利用する枠組みやラベル名を配置します。
    今回は「商品カタログ.docx」というファイル名で保存してあります。

    差し込みたい商品の情報は 8 つあるけれど、メイン文書は 1 ページでよいです。
    今回は「レター」という形式を使って、1 レコード (1 つの商品の情報) が 1 ページに表示されるようにします。
  • メイン文書の設定 (画像を挿入する手前まで)
  1. 準備したメイン文書を開き、リボンの [差し込み文書] タブの [差し込み印刷の開始] グループの [差し込み印刷の開始] をクリックして [レター] をクリックします。


  2. (画面上は特に変化がないように見えるけれど、レターの準備ができています。)
     リボンの [差し込み文書] タブの [差し込み印刷の開始] グループの [既存のリストを使用] をクリックします。


  3. [データ ファイルの選択] ダイアログ ボックスで事前に準備したデータ ファイル (カタログデータ.xlsx) を選択して [開く] をクリックします。


  4. [テーブルの選択] ダイアログ ボックスでデータが格納されているシートを選択して [OK] をクリックします。 


  5. データを挿入する位置にカーソルをおき、リボンの [差し込み文書] タブの [文書入力とフィールドの挿入] グループの [差し込みフィールドの挿入] をクリックして挿入するデータの列名をクリックします。
     
     ここでは、「商品コード」というラベルの右側に データ ファイルの [商品コード] 列のデータを差し込みたいので [商品コード] をクリックしています。


  6. 選択したデータ ファイルの列名が 「<<」と「>>」で括られて表示されます。


  7. [画像] 列 (画像ファイルのファイル名) 以外の列はすべてフィールドを挿入します。
     
     下図では、「商品名」というラベルの右側に [タイトル] 列のデータを、「商品概要」というラベルの右側に [概要] 列のデータを挿入しています。(ラベルとデータ ファイルの列名は一致していなくてもよし。関係ないからね。)
     
  • メイン文書の設定 (画像を挿入する)

前置きが長くなりましたが・・・。ここからが主題。
差し込み印刷と IncludePicture フィールドを組み合わせて画像を挿入します。

  1. 文書の画像を挿入する位置にカーソルをおいて、リボンの [挿入] タブの [テキスト] グループの [クイック パーツの表示] をクリックし、[フィールド] をクリックします。

  2. [フィールド] ダイアログ ボックスの [分類] で [リンクと参照] を選択し、[フィールドの名前] で [IncludePicture] を選択します。
     
     [ファイル名または URL] に画像ファイルが保存されているフォルダーのパスを入力します。(もちろんコピーして貼り付けても OK) します。
     
     たとえば下図では入り切っていないけれど、「C:\Users\Kanoko\Desktop\Demo\商品カタログ\商品画像」と入力されています。


  3. これは仮の文字なのでやらなくてもいいんだけれど、[ファイル名または URL] に記入したパスの末尾に「\画像」と追記します。
     (あとでフィールドに差し替えるから “画像” じゃなくても文字はなんでもよいです。
     
     フィールド オプションでスイッチを指定して [OK] をクリックします。


  4. フィールドが挿入されますが、この時点では画像ファイル名が指定されていないので下図のような枠だけが表示されます。
     

  5. 挿入されている画像の枠を選択して [Shift] キー + [F9] キーを押します。


  6. フィールド コードが表示されます。
     
     仮の文字として入力した「画像」という文字列の部分を選択して、リボンの [差し込み文書] タブの [文書入力とフィールドの挿入] グループの [差し込みフィールドの挿入] をクリックして画像ファイル名が格納されている列名をクリックします。


  7. 挿入されている画像の枠を選択して [Shift] キー + [F9] キーを押します。


  8. フィールド コードが表示されます。
     「画像」という文字列だった部分に 「{ MERGEFIELD 画像}」と指定されます。
     
     IncludePicture フィールドで画像を表示したいけれど、画像ファイル名までを指定しなければいけない。画像ファイル名はそれぞれ違うから、その部分だけ差し込み印刷のフィールドとして挿入してね、ってことです。
     
     フィールド コードを選択して [Shift] キー + [F9] キーを押します


  9. 該当するレコードの画像が表示されます。


  10. リボンの [差し込み文書] タブの [結果のプレビュー] グループの [結果のプレビュー] をオンにすると、画像だけではなく、該当するレコードの文字情報 (商品コードなど) も表示されます。


  11. レコードを移動したとき、画像は勝手には更新されないので、確認したいのならば、画像を選択して [F9] キーを押して更新します。
  • 画像を差し込んだファイルの出力

    ここまでのメイン文書の設定は、いわばデータ ファイルと文書ファイルの関連付けです。
    実際にデータを差し込んで別の文書ファイルとして出力するのであれば、次のように操作します。
  1. リボンの [差し込み文書] タブの [完了] グループの [完了と差し込み] をクリックし、[個々のドキュメントの編集] をクリックします。

  2. [新規文書への差し込み] ダイアログ ボックスで (ここでは全レコードを出力するので) [すべて] をオンにして [OK] をクリックします。


  3. メイン文書とは別の文書ファイルに、レコードを差し込んだ結果が表示されます。 

    この時点では、すべて同じ画像が表示されます。(まだ更新してないからね。) 


  4. [Ctrl] キー + [A] キーを押して、文書内のコンテンツすべてを選択し、日本語入力をオフにして [F9] キーを押します。
     日本語入力がオンのままだと再変換が実行されて更新がされないのでご注意を。


  5. 出力結果の画像がすべて更新されます。(= それぞれのページに商品の画像が表示されます。) 


  6. この出力ファイルを保存しておきたいのであれば、名前を付けて保存します。

    ここでは、「商品カタログ.docx」がメイン文書、「商品カタログ_出力用.docx」が差し込んだ結果ファイル、となるように保存しました。

ファイル名の一覧ってどうやってとるの?Dir コマンドって?とか、パスってどうやってコピーするの?とかっていう Windows の基本に対する疑問や、ラベルを使って 1 ページにたくさん写真を入れたかったらどうするの?などの差し込み文書に関する疑問は出てくると思いますが。

今回の「差し込み印刷で画像を挿入する」っていうのは、いわば機能を活用して応用した結果なので、基礎を知っていて組み合わせるとできますよ、という類のものです。なので、ちょっと不親切かもしれませんが、そこは別途知っておくべき基本なので、調べたり考えたりしてみてくださいませ。(そのうちどうしても質問が多ければ書くかもしれませんが。。。)

石田 かのこ