- ベストアンサー
Word2010 フィールド内での和暦の計算
差し込み印刷で、10年後の数値を和暦で表示したいと思っています。 元のExcelデータは、yyyy/m/d形式で表示されています。 差し込みフィールドA が、1985/10/1 の場合 、10年加算して「平成7年」と表示されて欲しいのですが、 {={差し込みフィールドA}+10 \@e} では、答えが「70」になってしまいます。 {={差し込みフィールドA}+10 \@ggge年} では、「未定義のブックマーク!昭和」とエラー表示になってしまいます。 {={差し込みフィールドA}+10 \@yyyy} では、当然ですが「1995」です。 どうしたら「平成7年」と表示させることができるでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
差し込むデータが日付なのですから、単純な数値と違って 計算の対象になりにくいものですね。 { 差し込みフィールド A }が「1985/10/1」だったならば、 { = { 差し込みフィールド A } }は割り算の結果になり、 年÷月÷日付の結果になります。これに足し算を追加しても、 意味がないことは理解できると思います。 日付を計算するには年月日を分解して、年だけ取り出して、 数値としての4桁に10を足すようにします。 以下の説明では、{ 差し込みフィールド A }を{ 日付 }と して説明します。{ MERGEFIELD 日付 }の省略形。 { 日付 \@ yyyy} ←これで4桁の年 { = { 日付 \@ yyyy}+10 } ←10年後 これを日付形式として認識できる形式にします。 { = { 日付 \@ yyyy}+10 }/1/1 このままだと日付のスイッチが追加できないので、計算の 結果ではなく文字列として認識させます。 { QUOTE "{ = { 日付 \@ yyyy}+10 }/1/1" } これで日付の文字列になるので、スイッチを追加すれば、 和暦の年になります。 { QOUOTE "1995/1/1" \@ ggge年}にするのが重要。
お礼
無事、和暦で表示することができました!!! 月と日を付け加えて文字列として括るわけですね! わかりやすく解説もしていただき、大変助かりました。 行き詰って3日も悶々としていましたが、早く質問すべきでした。 感謝に絶えません。