- 締切済み
エクセル・ワード フィールド書式の設定
ワードにエクセルからのフィールド書式を挿入して、フィールド書式を表示し「0」を表示しない「\##」を書き足して、空白セルが「0」で表示されないように設定をしました。その後、エクセル側で「空白」セルに「ー」などの文字にIF文で変換させたので、フィールド書式を書き戻したのですが、文字は「0」表示になってしまいます。削除して挿入し直したり、新規のワードに挿入したのですが問題が改善しません。フィールド書式を書き直していない、エクセルのセル部分は正常に表示されます。ワードのフィールド書式を書き換えるとエクセルのセル情報に影響が出るのでしょうか。質問の趣旨が伝えられたでしょうか、どなたか宜しくお願いします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- enunokokoro
- ベストアンサー率74% (3543/4732)
何故でしょうね。 1) Excel側のIF文を載せていただけないでしょうか。 2) Excel側の差し込みに使用しているデータシートを、新規ブックに コピーして、再検証してみる。 (このときシート内のすべてではなくデータのある範囲だけにする) 3) >エクセル2003 >a列 b列 > - ← Excelで「-」がIF文で作成したもの? >0 0 ← Wordの差し込みでスイッチのないもの?Excelの数値? >1 1 ← これは何?やはりExcelの数値データ? この場合のWordでの表示は問題がなかったのですよね? これと問題があるExcelシートとの違いを比べるのも大事は検証方法に なると思います。 回答側からこんなにくどい内容の問いかけをするのは、自己解決をする 手助けになるようなヒントや考え方を示すためです。様々な検証をして 原因をさぐるためには何かしらの具体的状況がわからないと回答し難い こともあります。上記の1)や2)はExcel側のトラブルの可能性を考え、 3)はWordとExcelの関係を探るためのものです。
- enunokokoro
- ベストアンサー率74% (3543/4732)
まずは確認したいのですが、DDE形式での差し込みはしないのですね。 OLE DB形式で対応したいのですね。 補足である程度は理解できたのですが、ExcelシートのデータをWordへ 新規文書として差し込みした場合、「フィールドに\##,スイッチを付け 加え、その後削除した表示」も試されたのでしょうか? つまりWordの新規文書にて試すときに、差し込みフィールドにスイッチ を付けた場合と付けない場合を検証して、それぞれの違いを確認して、 その後スイッチを付けたほうからスイッチを削除してからフィールドの 更新をして不具合があるかどうかを確認しているかどうかです。 私が検証のためにしたときには、フィールドへのスイッチの有無の違い だけ変化しなかなかったので、スイッチを削除=不具合が起きる とは 思えないのです。 Excel側のIF文が、私が検証したものと同じかどうかの判断ができない のですが、それでも関数があるなしだけでスイッチの削除と関係すると 思えないのです。Excelシートのデータを少なくした新規シートで同じ ことを試してくれますせんか。これによってWord側の不具合かExcel側 の不具合かを判断する材料になると思います。 今回の回答ではあまり参考になるような回答はできませんが、不具合の 原因を突き止めたいので、できるだけ協力しますから、お互い解決する まで検証してみませんか。 私はあまり力になれるような専門的な知識を持ってる者ではないですが Wordについての回答が多いので、何かしらの協力はできると思います。
お礼
大変丁寧な、対応ありがとう御座います。
補足
早々の回答ありがとう御座います。アドバイス通りに小さなシートを使って試してみましたが、同じような結果になりました。テストの詳細は、以下の通りです。 エクセル2003 a列 b列 - 0 0 1 1 以上の内容をワード2003に差し込み貼り付けをして MERGEFIELD"a列"\##, と書き換えて、\##,を削除しました。 確かに、小さなシートでは問題がありませんでした。 現在、制作している差し込みのセクセルは、シート数が10以上でデータの数も多く、大きなシートです。なぜ、大きくなると\##,を削除後にエクセルの1行目のデータ「-」が「0」表示になってしまうのでしょうか。私が、何か大きなミスでもしているのでしょうか。 MERGEFIELD"F1"
- enunokokoro
- ベストアンサー率74% (3543/4732)
質問内容が少し解りにくいので、勘違いの回答かもしれませんが。 Excel側のデータで空白セルが無く、かつWordの差し込みフィールドを ある文字に対応するように設定してあるのに対して「0」が表示される ということでしょうか? フィールドコードを表示して、その差し込みフィールドを提示すれば、どこが問題なのか予測が付くと思います。 できればExcel側も簡単なものでよいので提示してくれると判断し易い ですので助かります。 ちなみにExcel側の空白セルが「0」になるのは、差し込み形式がDDEで なく、OLE DB形式になっているために表示されていると思います。 Word2002以降のバージョンで初期の差し込み形式になっている形式を、 DDE形式に変更してください。 Excel のデータを差し込みすると、日付、電話番号、および通貨が 正しく表示されない場合の対処方法 http://support.microsoft.com/kb/882154/ja
補足
回答ありがとうございました。OLE DBの使い方を何度か試しましたが、解決につながりませんでした。具体的な症状としては、次の通りです。 エクセル2003 A B C - - 0 0 0 ↑ ↑ ↑ ↑ ↑ ワードフィールドの書き換えをしない列 ↑ IF文で空白を「-」に書き換えた列 初期の状態 差し込みをしたワード A B C 0 - 0 ↑ ↑ ↑ ↑ ↑ フィールドに何も手を加えない表示 ↑ フィールドに\##,スイッチを付け加え、その後削除した表示 フィールドに\##,スイッチを付け加えた表示 以上に用に一度\##,のスイッチを付け加えた列は、そのごフィールドを削除して差し込みを再設定したり、新規のワードに差し込みをしても上記のような現象が現れます。 質問が、的を得ていないようですがよろしくお願いします。
お礼
ありがとう御座います。色々と試してみます。