• ベストアンサー

差し込み印刷で、ある条件でフォント・色を変更する

ワード2007で、Excel2007のデータを差し込み印刷しています。 Excelのデータは、No、名前、所属、種類、タイトル、・・・ などとなっています。 差し込み印刷で (1)Noが1~10までは、所属を印刷しないが、行詰め字詰めはしない(5文字)。 そして (2)種類が、例えば「油絵」ならば、タイトルを赤色でゴシック体で表示する ようなことをしたいのです。 どのようにすればいいのでしょうか? 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.4

No.2の回答にあるお礼に対する追加回答です。 > MERGEFIELD "No" は文字列と判断され エラーに 通常の差し込み印刷での[差し込みフィールドの挿入]からNoを挿入しても、同じようにエラーになるのでしょうか? Wordでも、IF文で数値と認識するためには半角数字でないと、差し込み に限らず数値として認識してくれません。 Excel側で数値として入力されているなら、半角数字になっているはずですよね。 { IF { MERGEFIELD "No" } > 10 "     "{ MERGEFIELD "所属" } } が正しくないとするなら、不等号の後に半角スペースを入力していない ためかもしれません。不等号の前後に半角スペースを入れていない場合 だと、不等号の後ろにある数値が正しく認識しません。 この場合、エラーとして「エラー!条件式が正しくありません。」での エラーになります。 不等号の記号も、全角の「>」だと、前後に半角スペースがあっても同じ エラーになります。半角の「>」にする必要があります。 { IF { MERGEFIELD "No" } > 10 "     "{ MERGEFIELD "所属" } } または { IF { MERGEFIELD "No" } >"10" "     "{ MERGEFIELD "所属" } } のように10を" "で囲めば、その前の半角スペース入りません。

banzaiA
質問者

お礼

早速、回答いただきましてありがとうございます。 私なりにいろいろ試してみたもののうまくいかなかったので再度の質問になりました。 試した時には、半角スペースも試行したつもりでした。 今、ご指摘のように半角スペースを不等号の後に挿入しましたところ、うまく作動しました。 これで、私の考えていたことがすべてうまく行くことになりました。 何回もおつきあい頂き、ありがとうございました。

その他の回答 (3)

回答No.3

No.2の回答の一部に記入間違いがありました。 10以下を示すIF文のフィールドコードの演算子の等号位置が逆でした。 正しくは >= と書くべきだったのを => と書いてしまいましたね。 基本的な部分を間違えるとは、検証していないことの証明ですね。 10以下の部分はフィールドコードを直接書いたものだったので、検証を していませんでした。 このままだと"エラー! 条件式が正しくありません。"になります。 { IF { MERGEFIELD "No" } <= 10 "     "{ MERGEFIELD "所属" } } のようにしてくださいね。 No.1の添付画像も一部間違っていますので、修正し利用してください。 No.1の参考に載せたURL先にもありますが、以下のサイトに正しい記載 の演算子が載せてあります。 再掲 フィールド コード: IF フィールド http://office.microsoft.com/ja-jp/word-help/HP010077969.aspx

banzaiA
質問者

お礼

早速ご教示いただきありがとうございます。 指示を見て勉強になります。 これから、頑張ってみます。

回答No.2

差し込み印刷でIF文を使えば可能ですよ。 過去ログですが、参考にはなります。 http://okwave.jp/qa/q6993164.html 質問条件だけでフィールドコードを書くなら、以下のようになります。 (1)について 差し込みするフィールド名が「所属」と「No」だとします。 { MERGEFIELD "No" }と{ MERGEFIELD "所属" }を続けて挿入します。 その範囲を選択し[ Ctrl+F9 ]キーを押し新規フィールドで囲みます。 { { MERGEFIELD "No" }{ MERGEFIELD "所属" } }になったら、以下の ようにIF文を追加します。 { IF { MERGEFIELD "No" } =< 10 "     "{ MERGEFIELD "所属" } } これでNoが10以下なら全角スペース5文字になり、そうでなければ所属 を表示してくれます。 (2)について 差し込みするフィールド名が「種類」と「タイトル」だとします。 (1)と同じように続けて挿入し、新規フィールドで囲みます。 (タイトルは二つ挿入しておくこと) { { MERGEFIELD "種類" }{ MERGEFIELD "タイトル" }{ MERGEFIELD "タイトル" } } になったら、最初のタイトルの差し込みフィールド全体を赤ゴシックに 変更しておき、以下のようにIF文を追加します。 { IF { MERGEFIELD "種類" } = "油絵" { (赤ゴシックの)MERGEFIELD "タイトル" }{ MERGEFIELD "タイトル" } } 添付画像はキャプチャするために折り返ししていますが、行の折り返し は必要ありません これで種類が油絵のときだけ赤ゴシックのタイトルになります。 http://office.microsoft.com/ja-jp/word-help/HP010077969.aspx http://office.microsoft.com/ja-jp/word-help/HP005187676.aspx http://support.microsoft.com/kb/214827/ja http://www4.synapse.ne.jp/yone/word2013/word2013_sasikomi_jf.html http://www12.atwiki.jp/matango/pages/103.html

banzaiA
質問者

お礼

ありがとうございます。 あれこれと勉強しながらなんとか目的を達しました。 でも一つだけうまくいかないのです。 { IF { MERGEFIELD "No" } > 10 "     "{ MERGEFIELD "所属" } } の部分の MERGEFIELD "No" は文字列と判断され エラーになりました。 勿論 MERGEFIELD "No" は数値として入力しています。 (エクセルで No に入力する部分は書式指定で数値に指定しています。) お教えいただければ嬉しいです。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.1

それぞれ別々のファイル名で保存してみてください。

banzaiA
質問者

お礼

早速の回答ありがとうございます。 仰っている意味がわからないのでお教え下さい。 Excelのデータは勿論、「差し込み印刷データ」などと保存し、 ワードの文章は「○△」などと保存してあり、 普通の差し込み印刷は、(フォントの種類や色を買えないで) 印刷できます。 その上で、欲がでてきて、変化を持たせたいのです。 説明不足で申し訳ないですが、宜しくお願いします。

関連するQ&A