• ベストアンサー

日付の書式の維持

エクセル2002です。 A1にある基準日(平成23年10月1日)から見た 10年前の3月22日~翌3月21日を、 「平成13年3月22日~平成14年3月21日」と表示させたいのですが・・・ 色々試しても数式内に""や&があると、日付の書式にしても数字が崩れてしまいます。 30年前のも作りたいので、昭和を表示させるためにも書式は「日付」のままがいいのですが、 月日だけ固定したまま年を計算したり、""等の記号を式に入れても問題ないような方法があれば、教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

一番シンプルなのはDATE関数で日付を作り,TEXT関数で「&で文字列結合しても壊れない日付文字列」を作ります。 =TEXT(DATE(YEAR(A1)-10,3,22),"ggge年m月d日") & "~" & TEXT(DATE(YEAR(A1)-9,3,21),"ggge年m月d日") アドインで分析ツールを追加し,EDATE関数などを使うような手もあります。 年月を固定する別の手と組み合わせて =TEXT(EDATE(A1,-12*30),"ggge年") & "3月22日~" & TEXT(EDATE(A1,-12*29),"ggge年") & "3月21日" などでも。

nasu000_002
質問者

お礼

回答ありがとうございます。 最初の式でうまく行きました! 時間があればアドインも試してみます。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

質問者は、エクセルの表示形式のことがわかっているのか心配。 質問の要求には、既に回答で出ている、TEXT関数で、望みの日付文字列を作って、2つの日付と、(記号)~文字を&で結合するほかない。 (1)しかし、見た目の文字列を表示するだけで、日付関数には使え無くなる。 こういうことをしたいセルは、沢山はないだろうから、手入力したら住むのでは。 沢山あるなら(式の)複写など使うなら例データを挙げて何処を変化したいのかわかるようにして、質問すべきだ。 苦労して、質問までしてやるようなことかな。

nasu000_002
質問者

お礼

回答ありがとうございます。 仰る通り、式を入れるセルは少なく、手入力で済む範囲です。 ですが、今後のために良い解法を頭に入れておきたかったのです。 勉強不足で蓋を開ければ毎回たいしたこと無い質問になってしまうのですが、また宜しくお願いします。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

=TEXT(DATE(YEAR(A1)-10,MONTH(A1),DAY(A1)),"ggggyy年mm月dd日") & "~" &TEXT(DATE(YEAR(A1)-9,MONTH(A1),DAY(A1)),"ggggyy年mm月dd日") なんかいかがですか。

nasu000_002
質問者

お礼

回答ありがとうございます。 DATE関数の使い方をもっと勉強しようと思います。

関連するQ&A