電子書籍の厳選無料作品が豊富!

エクセルデータ
名前 d_1 d_2 d_3 d_4   d_5
○1  0  1  1  2  0
○2  1  1  3  1  1
○3  0  2  0  0  0
○4  0  1  0  0  1

のようなデータ(今はd_1~d_5の5個ですが今後増加します。データ部分の1は登録、それ以外は未登録の種類の数値)があり、ワード文書は個票の形の表を文書内に差し込みたいのです。
ワードで出力したい形式は個票で
----------------------(個票始まり)
○1 様 あなたが登録されているのは
  d_2
  d_3  です。
(個票終り)--------------(次の個票始まり)
○2 様 あなたが登録されているのは
  d_1
  d_2
  d_4
  d_5  です。
(個票終り)--------------(次の個票始まり)
○4 様 あなたが登録されているのは
  d_2
  d_5  です。
(個票終り)--------------(次の個票始まり)
というように、各人物の登録されている部分だけを差込印刷したいのですが、どうすればいいのですか?
つまり人によって、データ部分(フィールド)の増減があるのです。
ご教授の程よろしくお願いします。
フィールドを全部表示するのは初心ながら少しは理解出来ると思います。

A 回答 (6件)

>表形式(罫線のある)には出来ないものでしょうか?


>これはまた別の話なのでしょうか?

そうですね。別の話ですね。
私も勉強させていただいたので、お礼を兼ねて回答します。
思い付くのでは、2つの方法があると思います。

1.通常の表形式

フィールドコードを表示した状態にしておきます。
差し込み文書を作成したら、表(罫線)にしたい範囲を
選択します。
メニューの[罫線]→[変換]→[文字列を表にする]で
[文字列の区切り]を[段落]にして表形式に変換します。
この場合、データ部分は一つの段落なので、差し込みの
表示を区切ることは無いですが、表示データによって
罫線範囲が動きます。

2.ヘッダーとフッターに枠を作成する

決まった罫線を各差し込みページに表示したいのなら、
ヘッダーとフッターにオートシェイプで枠を作成するなり、
テキストボックスの中に表を入れるなりしてみては。

どのような罫線を引きたいのか、私には具体的イメージが
できないので、アドバイスとしてはこれぐらいしか提示
できませんが...

別質問を立てれば、他の回答者からも別の方法を提示される
でしょうから、上記の方法では納得できなかったら別質問を
して下さいね。
    • good
    • 0

補足に気付くのが遅くなりました。


作成手順を載せれば良いのですね。

データ部分の(改行)以外を同じ段落内に入れておきます。

{ MERGEFIERD 名前 } →(Tab)様の~ (改行)

{ IF{ MERGEFIERD d_1 }="1""d_1""" }{ IF{ MERGEFIERD d_2 }="1""d_2""" }{ IF{ MERGEFIERD d_3 }="1""d_3""" }{ IF{ MERGEFIERD d_4 }="1""d_4""" }{ IF{ MERGEFIERD d_5 }="1""d_5""" }

あとはEnterキー(改行)を指定した場所に、それぞれ挿入していくだけです。

No2の回答の方法で表示がされているなら(改行)の入れる位置を変更するだけです。

これで上手くいきませんか?
    • good
    • 0
この回答へのお礼

ご指南でうまくいきました。ありがとうございます。
感謝します。
欲をいえば、表形式(罫線のある)には出来ないものでしょうか?
これはまた別の話なのでしょうか?

お礼日時:2006/06/17 08:56

No3のmoon00さん的確なアドバイス有難う御座いました。


とても勉強になりました。
Wordをある程度知っているつもりでも、勉強不足を痛感
しました。感謝します。

No2の回答を一部訂正(No3さんのアドバイスを受けて)

{ MERGEFIERD 名前 } →(Tab)様 あなたが登録されているのは(改行)
{ IF{ MERGEFIERD d_1 }="1""d_1(改行)
""" }{ IF{ MERGEFIERD d_2 }="1""d_2(改行)
""" }{ IF{ MERGEFIERD d_3 }="1""d_3(改行)
""" }{ IF{ MERGEFIERD d_4 }="1""d_4(改行)
""" }{ IF{ MERGEFIERD d_5 }="1""d_5(改行)
""" }

これなら置換を使用しなくても繰り上げてくれますね。

この回答への補足

お礼のメッセージを書き込んで、早速やってみたのですが、解らないことがあり、補足のところに書きます。失礼の段、平にご容赦を!
>これなら置換を使用しなくても繰り上げてくれますね。
ご指摘のとおり最初は繰り上げてくれるのですが、次の行はどのようにすればいいのでしょうか?
私のデータの例で言うと
○1 さまの
d_2
は表示されるのですが、次のd_3を表示させるにはどのように書き込めばいいのでしょうか?宜しくお願いします

補足日時:2006/06/16 00:00
    • good
    • 0
この回答へのお礼

ありがとうございます。
早速やってみます。
参考になりました。感謝です

お礼日時:2006/06/15 21:51

差し込み印刷にはあまり詳しくないのですが、


フィールドの条件による命令の中に「改行」を含むことができるのではないでしょうか。
下記のHPの「差し込み文書に空白行が表示される」に書かれている内容によると、できそうなのですが。
あいまいな回答ですみません。

参考URL:http://office.microsoft.com/ja-jp/assistance/HP0 …
    • good
    • 0
この回答へのお礼

ありがとうございます。
そのようなことが出来るのですね?
勉強します。

お礼日時:2006/06/15 21:50

差し込み行の繰上げについては、元データが空白行ではないので


私の現在のスキルでは無理でした。

まったく出来ないわけではないので、その説明は後半に載せます。

まずは、差し込むデータに合わせて表示させる方法から。
フィールドコードの表示の状態で説明しています。

{ MERGEFIERD 名前 } →(Tab)様 あなたが登録されているのは(改行)
{ IF{ MERGEFIERD d_1 }="1""d_1""" } (改行)
{ IF{ MERGEFIERD d_2 }="1""d_2""" } (改行)
{ IF{ MERGEFIERD d_3 }="1""d_3""" } (改行)
{ IF{ MERGEFIERD d_4 }="1""d_4""" } (改行)
{ IF{ MERGEFIERD d_5 }="1""d_5""" } (改行)

フィールドコードを非表示にすれば、これで表示上は改行入りの
個票が出来ていると思います。

これをA4サイズの[新規文書への差し込み]をして、各ページ1枚毎に
[名前]別に作成します(セクション区切りで個別になる)。

ここで余分な[改行のみ]の段落を削除するため、[置換]を利用します。

置換の[オプション]から[あいまい検索]のチェックを外しておきます。
[検索する文字列]には「^p^p」を入れます。
[置換する文字列]には「^p」を入れます。
[置換]で余分な改行を削除します。

この方法以外でも、[置換]を上手く活用して対処してみてはいかが
でしょうか。

ちなみにマクロを使用すれば、もっと簡単な気がしますが、そこ
までのスキルを持ち合わせていないので、他の回答者が提示して
下さることを期待します。
    • good
    • 0
この回答へのお礼

ありがとうございます。
新規文書に書き出して、置換ですか?
>[検索する文字列]には「^p^p」を入れます。
>[置換する文字列]には「^p」を入れます。
>[置換]で余分な改行を削除します。
は存じませんでした。ありがとうございました。

お礼日時:2006/06/15 21:45

差し込みするWord側の個票のサイズは一定にはしないのですか?



「d_1 d_2 d_3 d_4 d_5」を表示するとき改行されていますが、
改行しないといけないのですか?
この部分は増減するとなると、改行してあると個票のサイズ
がどんどん大きくなるのでは?
表示しない場合、改行してある所を詰めて(繰り上げて)表示
するようにしたいのですか?

単純に登録しているものだけを表示するなら、IFフィールド
と差し込みフィールドを使用すれば出来ますが、作成したい
個票のレイアウトが判らないと説明し難いです。
(場合のよっては回答できる可能性があるので)

この回答への補足

ありがとうございます。ご指摘のとおり
改行して行きたいので、個票のサイズは大きくなります。
ただ個票はA4サイズ1枚に、一人分と考えています。またそれはA4サイズ以上にはならないデータになっています。
>表示しない場合、改行してある所を詰めて(繰り上げて)表示するようにしたいのですか?
はい、繰り上げて表示したいのです。
宜しくお願いします

補足日時:2006/06/14 22:47
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!