ここから本文です

エクセルについて教えてください。

scg********さん

2011/1/2900:29:52

エクセルについて教えてください。

A1セルに「2011/01/01」、B1セルに「2013/01/01」とあります。(直接入力したものではなく、別セルに入力した8桁の値「20110101」と「20130101」をそれぞれ「YYYY/MM/DD」の形に表示したものです。)そしてC1セルにも、ある日付を入れるのですが(C1セルの日付も表示が「YYYY/MM/DD」となっているだけで、実際には「20130505」といった8桁の数字です。)、C1セルに、例:「2013/05/05」とA1~B1の期間内におさまっていない日付が入った場合に、「期間外の日付です」といったようなメッセージが表示されるようにしたいのですが、どのようにすればよいでしょうか?ご教示願います。(例:「2012/08/05」といったようにA1~B1セルの期間内の日付がC1セルに表示された場合には、何もメッセージを表示する必要はありません。)

補足IF関数による表示の場合、期間外の日付を入力し、一度メッセージが表示されると、その後期間内の日付を入力し直しても、メッセージが消えずに残ってしまいます。期間外or期間内の入力ごとにメッセージが表示/非表示に切り替わるようにするためにはどうすればよいでしょうか。ご教示お願いします。

閲覧数:
433
回答数:
2

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

kky********さん

2011/1/2911:39:54

>直接入力したものではなく、別セルに入力した8桁の値「20110101」と「20130101」をそれぞれ「YYYY/MM/DD」の形に表示したものです。
この部分が気になります。どのようにして「YYYY/MM/DD」の形式にしたのでしょうか?
例えばA10セルの20110101をA1に、=LEFT(A10,4)&"/"&MID(A10,5,2)&"/"&RIGHT(A10,2) で表示していて、B1とC1も同じようにしていれば
D1に =IF(AND(C1>=A1,C1<=B1),"","期間外の日付です") の式で期間内であればメッセージはきちんと消えますが。

また、元の8桁の数値が入ったセルで比較する方が簡単だと思います。
いずれにしても、比較するものの形式は同じでなくてはなりません。文字と数値を比較する式になっていませんか?

質問した人からのコメント

2011/1/29 21:25:39

感謝 ありがとうございます。ご指摘の通り、どうやら文字と数値を比較するかたちになっていたようで、その点を解消して文字と文字を比べるかたちにしたところ、お書きの式で大丈夫でした。

ベストアンサー以外の回答

1〜1件/1件中

kos********さん

2011/1/2901:00:36

メッセージを表示するセルをD1として、D1に下記の式でどうでしょう。

=IF(C1<A1,"期間外の日付です",IF(C1>B1,"期間外の日付です",""))

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる