it-swarm-ja.com

Word2010で条件付きフィールドコード内に段落区切りを作成する方法

フィールドコードと差し込み印刷を使用して順次リストを作成しようとしています。私の問題は、差し込み印刷の方法によっては、特定の項目をリストに表示する必要がないことです。これは紛らわしいので、例を挙げましょう。

さまざまな果物の数量のリストをまとめているとしましょう。リンゴ、オレンジ、ナシの数を示す差し込み印刷文書があります。したがって、リストは次のようになります。

  1. 32個のリンゴがあります。
  2. オレンジは27個あります。
  3. 梨は3つあります。

フィールドコードを使用すると、次のようになります。

(SEQ list1)(MERGEFIELD "Apples")りんごがあります。

(SEQ list1)(MERGEFIELD "Oranges")オレンジがあります。

(SEQリスト1)(MERGEFIELD "Pears")梨があります。

さて、オレンジがなければ、リストに載せたくありません。私はリストにこれを見せたいだけです:

  1. 32個のリンゴがあります。
  2. 梨は3つあります。

これを行うには、if/thenコンディショニングを使用します。 (IF(MERGEFIELD Oranges)= 0 "" "(SEQ list1)(MERGEFIELD" Apples ")のリンゴがあります。これにより、リストからオレンジを削除できますが、スペースが残ります。

  1. 32個のリンゴがあります。

  2. 梨は3つあります。

私はそのスペースを取り除くためにできる限りの方法を試しましたが、それを理解することはできません。おそらくここの誰かが私を助けることができます。

2
Thomas

余分なスペースを避けるために、IFフィールドテキスト内に段落記号を配置する必要があるため、次のようになります。

{ IF { MERGEFIELD Apples } = 0 "" "{ SEQ list1 } There are { MERGEFIELD Apples } apples.
" }{ IF { MERGEFIELD Oranges } = 0 "" "{ SEQ list1 } There are { MERGEFIELD Oranges } oranges.
" }{ IF { MERGEFIELD Pears } = 0 "" "{ SEQ list1 } There are { MERGEFIELD Pears } pears.
" }whatever text comes next, assuming that there is always at least one numbered paragraph.

つまり、各IFフィールドの最後の二重引用符の前に段落記号を挿入する必要があります。

ただし、{MERGEFIELD Apples}が0などの場合でもWordはSEQフィールドを評価するため、それだけでは不十分です。したがって、Appleがない場合、OrangesのSEQフィールドは1ではなく2に評価されます。おそらくこれを使用してそれを回避できるマージ:

{ SET list1 0 }{ IF { MERGEFIELD Apples } = 0 "" "{ SET list1 { =list1+1 }{ list1 } There are { MERGEFIELD Apples } apples.
" }{ IF { MERGEFIELD Oranges} = 0 "" "{ SET list1 { =list1+1 }{ list1 } There are { MERGEFIELD Oranges } orangee.
" }{ IF { MERGEFIELD Pears } = 0 "" "{ SET list1 { =list1+1 }{ list1 } There are { MERGEFIELD Pears } Pearss.
" }whatever text comes next, assuming that there is always at least one numbered paragraph.

(SEQフィールドを使用することは可能ですが、注意が必要です)。

1
user181946