dポイントプレゼントキャンペーン実施中!

 ワード、エクセル2003を使っています。

 普通にフィールドを挿入すると1/1/1937となってしまい、エクセルと同じように表示してくれません。昭和12年1月1日という形式にしたいので、色々調べてみたところ、
フィールドコードを{MERGEFIELD"生年月日"\@"gge年M月d日"}とすれば解消できると聞き試してみましたが、何も変化がありません。

 またエクセルデータは空欄なのに、ワードでは12:00:00AMと表示されてしまい、これも空欄のままにしたいです。

 このような問題を解決する方法を教えていただけませんか。

A 回答 (2件)

Excelの元データがシートの左端(先頭)にあるのなら、差し込み形式を


DDEにすることで表示形式と空欄の問題は解決します。

Excel のデータを差し込みすると、日付、電話番号、および通貨が正しく
表示されない場合の対処方法
http://support.microsoft.com/kb/882154/ja

OLE DBのまま差し込みするのならば、フィールドコードにしている場合
は質問の形式では無理なので、こちら↓に書き直します。
{ MERGEFIELD "生年月日" \@ "ggge年M月d日" }
http://www.nurs.or.jp/~ppoy/access/etc/etc011.html

空欄についても、OLE DBでは元データを日付として認識しているので、
0の時間として表示をしてしまいます。
空欄にしないでスペースとかを入れてあれば、差し込み先でスペースと
して入力されると思います。
もしも、こちら↓で対応ができれば使用してみてください。
{ if{ MERGEFIELD 生年月日 }="12:00:00 AM"""{ MERGEFIELD 生年月日\@ "ggge年M月d日"}}
私の経験では、半々ぐらいで(やり方が悪いのか)駄目になるようです。
    • good
    • 0
この回答へのお礼

>Excelの元データがシートの左端(先頭)にあるのなら、差し込み形式をDDEにすることで表示形式と空欄の問題は解決します。

 どういう意味なのか分からないのですが、この通りしてみたらうまくデータを表示してくれました!! ありがとうございました。

>OLE DBのまま差し込みするのならば、フィールドコードにしている場合
は質問の形式では無理なので、こちら↓に書き直します。
{ MERGEFIELD "生年月日" \@ "ggge年M月d日" }

 これでもやはり無理でした… enunokokoroさんも半々ぐらいで成功と言っているので、エクセルの元データが何か関与しているのかも? 次回はこの方法でうまく出来ればいいなぁ。

お礼日時:2007/12/26 16:49

Excelのデータを CSV保存してから 取り込んだらどうでしょう。

    • good
    • 0
この回答へのお礼

 今回は関数を組んであるシートからの差し込み印刷だったので、CSV形式で保存すると、そのデータが消えてしまったので無理でした。また別の機会にこの方法も試してみます。

お礼日時:2007/12/26 16:43

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

このQ&Aを見た人はこんなQ&Aも見ています