[[20100929152347]] 『入力規則で日付の制限をしたい』(岡山) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『入力規則で日付の制限をしたい』(岡山)

A1セルには普通に日付を入力し、B1にはA1セルから一年以内の日付を入力するようにしたいです。
(A1に2010/09/29だとすると、B1には2011/09/29まで入力ができる)

下記のように入力規則で設定をしたのですが、閏年を考慮すると、全く上手くいきません。ご指導お願いいたします。

=AND(ISNUMBER(B1)=TRUE,LENB(B1)<=8,ISERR(FIND(CHAR(45),B1)),DATEDIF(A1,B1,"D")<=365,(B1<=A1)=FALSE)


 データの入力規則で

 入力値の種類 日付を選択

 データ 次の値の間を選択

 次の日付から を =A1

 次の日付まで を =DATE(YEAR(A1)+1,MONTH(A1),DAY(A1))

 で出来ると思います♪

 (忍)

 例えばA1セルに「2012/2/29」と入力された場合、B1セルに入力できる日付はいつまでですか?
 (独覚)

(岡山)

□忍さん

それだと、A1に2010/09/29と入力するとB1は2011/09/28までしか入力できません。2011/09/29まで入力できるようにしたいのです……。

□独覚さん

それだとB1には2013/02/28までと前倒しになります。


 Excelのバージョンが2007以降であれば入力規則で「入力値の種類」に「日付」「次の日付から」に「=A1」、
 「次の日付まで」に「=EDATE(A1,12)」と設定してみてください。

 それから忍さんの設定でA1セルが「2010/9/29」であれば「2011/9/29」まで入力可能ですよ。
 ただし、「2012/2/29」の時に「2013/3/1」まで入力可能になってしまいます。

 追記
  2003以前の場合は「次の日付まで」に
  =MIN(DATE(YEAR(A1)+1,MONTH(A1),DAY(A1)),DATE(YEAR(A1)+1,MONTH(A1)+1,0))
  で。
 (独覚)

 独覚さん

 EDATE…なるほどです(^−^)

 日付…と思うと、すぐ DATE…と想像してしまいます(^^ゞ

 もう少し広い視野でみないといけませんね。勉強になりました♪

 (忍)

(岡山)

□独覚さん

バージョンはExcel2007です。

ありがとうございます!ですが、私が説明をし忘れていたのですが、A1が2010/09/29の場合、B1は2010/09/30から2011/09/29の間でした…!

大変お手数ですが、もう一度ご教授お願いいたします。

あと、忍さんが書いてくださった式ですが、確認しながら試してみても、やはり出来ませんでした。


 「次の日付から」の方を「=A1+1」としてみてください。
 (独覚)

独覚さん

できました!本当にありがとうございます!(岡山)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.