[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『日付』(名無し1107)
日付のことで教えていただきたいのですが・・・・
・・・・例えば・・・・
A B C 1 年月日 有効期限 提出期限 2 平成13年3月31日 平成18年3月30日 平成18年2月28日
こんな感じの表を作るとして、B列にはA列の5年後の一日前の日を、 C列にはA列の5年後の1ヶ月前の日を出したいのですが、 何か計算式はないでしょうか・・・・。
A列には130331というように、6桁の数字をいれてあります。
外してたら、スイマセン
B2 =DATE(YEAR(A2)+5,MONTH(A2),DAY(A2)-1) C2 =DATE(YEAR(A2)+5,MONTH(A2),DAY(A2)+1)-DATE(,2,1)
日付の管理は、閏年があるから難しい・・・ 検証不足だったら、ごめんなさい〜
追伸: 折角ですから、ニックネームも入れましょ^^
(キリキ)(〃⌒o⌒)b
せっかくなんですけど・・・・うまくいきません・・・・。
年が変わらず、月が変わってしまう・・・・。
うーん、自分でもやってみたんですけどわからなくて・・・・。
ありゃりゃ、、、 また、失敗!
>A列には130331というように、6桁の数字をいれてあります。 コレを見ていませんでした。。。
こちらで如何でしょう?
B2 =DATE(1988+MID(A2,1,2)+5,MID(A2,3,2),MID(A2,5,2)-1) C2 =DATE(1988+MID(A2,1,2)+5,MID(A2,3,2),MID(A2,5,2)+1)-DATE(,2,1)
※年度は、「平成」のみの対応です。 西暦との誤差「1988」分を足しています。
(キリキ)(〃⌒o⌒)b
細かい仕分けが良く解ってないので外していたらすみません。
B2 =DATE(YEAR(A2)+5,MONTH(A2),DAY(A2))-1 C2 =EDATE(B2,-1) ツールアドイン→分析ツールにチェック BJ
だいたいうまくいったのですが・・・・。
C列で、13年3月31日は18年2月28日で良かったし
13年4月17日は18年3月17日になって良かったのですが
13年5月25日は18年4月24日になったしまったりで
たまに1ヶ月の1日前になってしまうところがあるのですが、
これはなんでなんでしょうか?????
やっぱり検証不足か・・・ 日付は難しいですね〜
ここは、BJさんの仰っている方法で如何でしょう? C2 =EDATE(B2,-1)
(キリキ)(〃⌒o⌒)b
むずかしいですね・・・・。
BJさんのにすると、最初のはいいのですが、
あとのがすべて1ヶ月の1日前になってしまいます・・・・。
EDATE関数を使っていいなら、下記でどうでしょう? B1セル =EDATE(A1,5*12)-1 C1セル =EDATE(A1,5*12-1) 第二引数は月数ですので、5年後は 60 とすればいいのですが、 年数をわかりやすくするため、5*12 としています。 (純丸)(o^-')b
衝突〜!!
これでは如何でしょう?
B2 =DATE(1988+MID(A2,1,2)+5,MID(A2,3,2),MID(A2,5,2)-1) C2 =EDATE(DATE(1988+LEFT(A2,2),MID(A2,3,2),MID(A2,5,2)),59)
A1が、シリアル値に出来るなら純丸さんの方法がスッキリしていますね^^ (キリキ)(〃⌒o⌒)b
こんな関数見たくない!! って感じですが =IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2))), IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-1)), IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-2)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-3), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-2)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-1)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2))) C列用です。 ・・・・できますか?
(HANA)
(追記)
ちなみに、(キリキ)さんの式を参考にさせてもらっているので B列に B2 =DATE(1988+MID(A2,1,2)+5,MID(A2,3,2),MID(A2,5,2)-1) を使わせてもらうと、一応似た式が並びます。 EDATE関数は便利なんですけどね、ここは根性で使わずに。(笑)
(HANA)
(訂正)
上の式では1月の時にエラーが出てしまうので =IF(--MID(A2,3,2)=1, --(1988+MID(A2,1,2)+4&"/12/"&MID(A2,5,2)), IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2))), IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-1)), IF(ISERROR(--(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-2)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-3), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-2)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)-1)), --(1988+MID(A2,1,2)+5&"/"&MID(A2,3,2)-1&"/"&MID(A2,5,2)))) 月を判断するIF関数を追加です。 度々申し訳ないです。
(HANA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.