- ベストアンサー
ワードの差し込み印刷の日付表示について
- Microsoft2003を使用して、エクセルデータをワードへ差し込み印刷する名簿を作成しています。しかし、印刷した際に日付の表示が正しくない問題が発生しています。
- エクセルの受付日は『H22.4.1』のような書式になっていますが、ワードで差し込み印刷をすると『平成34年4月1日』のような表示になってしまいます。
- 試しにフィールドコードの一部を変更してみたところ、正しい日付が表示されることがわかりました。なぜこのような現象が起きるのか理由を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No.1の回答者さんの補足的回答ですが。 私もDDE形式の差し込みについて詳しく知っているわけではないですが、 フィールドコードについては興味がありいろいろ調べたことがあります。 文字列として認識させる[ Quote ]フィールドを使った場合の日付様式 にて『H22.4.1』を入力した場合は、先頭のHを無視してピリオド区切りの 西暦として2ケタの省略形での日付『22.4.1』として認識します。 { QUOTE "22.4.1" \@ "yyyy年" } → 「2022年」 ※{ QUOTE "22/4/1" \@ "yyyy年" }でも同じ省略形の日付。 http://office.microsoft.com/ja-jp/word-help/HP005186186.aspx DDE形式の場合はExcelのセルの書式を維持して連動する文字列として、 Word側に送られるようなので、今回の質問にあるような動作をします。 例えば、セルの書式で半角数字を全角にした数値を差し込んだ場合には、 [数値書式スイッチ]で認識できない文字になるので無効になります。 Excel側[DBNum3][$-411]0 の場合 { MERGEFIELD"全角数字" \# #,###円}は桁区切りしない。 http://office.microsoft.com/ja-jp/word-help/HP005186226.aspx このように、DDEの場合はExcel側の書式を維持する形式なので日付や 数値などのフィールドコードでスイッチが無効になることもあります。 Excel側の書式を4ケタの西暦にするか、OLEDBなどの形式でWord側の 差し込みをしたほうがよいと思います。
その他の回答 (1)
- chonami
- ベストアンサー率43% (448/1036)
確かになりますね。 ワード側の「H22」と言うのは平成22年とは認識してないみたいですね。 22だけを取ってきて2022年と認識しているのかと。 DDE接続では受け取った側の形式が文字列みたいな感覚になるのかもしれません。 OLE DB データベースファイル(最初の状態)で差し込んでからフィールドを変更した場合は上手く行きました。 元々フィールドコートを変更するのは、DDE接続していない時の対応だったと思います。 ですので、 エクセル側で書式を変えてDDE接続 OLE DB データベースファイルで接続してフィールドコートを変更 の2択になるかと思います。 どちらかお好きな方を。
お礼
返事遅くなって申し訳ありません。OLE DBの方にすると別の所が表示されなくなってしまうというのが出てきてしまったのでエクセル側の書式を変えました。 わかりやすい説明をありがとうございました。
お礼
返事遅くなり申し訳ありません。 エクセル側の書式を変更の選択をいたしました。 詳しい説明頂きありがとうございました。 自分がまだまだでもっと勉強しなきゃ…と痛感しました。 ありがとうございました。