- 締切済み
エクセルでの検索
教えてください 検索で 日付 2011年3月1日から2011年3月14日までを 1を表示し 2011年3月15日から2011年3月20日までを 2を表示 2011年3月1日から2011年3月30日までを 3と表示する 関数ありますか? 教えてください
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- KURUMITO
- ベストアンサー率42% (1835/4283)
ご質問の内容は多少間違っていると思われますのでこちらで勝手に解釈して式にすれば次のようになるでしょう。 A1セルから下方に日付があるとしたら」A1セルには次の式を入力して下方にオートフィルドラッグします。 =IF(AND(A1>="2011/3/1"*1,A1<="2011/3/14"*1),1,IF(AND(A1>="2011/3/15"*1,A1<="2011/3/20"*1),2,IF(AND(A1>="2011/3/21"*1,A1<="2011/3/31"*1),3,""))) 日付の範囲を決めるにはAND関数を使いますし、日付を"2011/3/1"のように入力する場合にはそれをシリアル値に変換するために*1を使っています。
- keithin
- ベストアンサー率66% (5278/7941)
ご質問に忠実に: =IF(OR(A1-"2011/3/1"<0,0<A1-"2011/3/30"),"",MATCH(DAY(A1),{1,15,21},1)) などで。 #31日が範囲外なのは,イミがあるのか単なる勘違い誤記なのか??
- imogasi
- ベストアンサー率27% (4737/17070)
区間3つぐらいはまでなら、IF関数と、AND関数でやる手もある。 しかし区分が多くなるとVLOOKUP関数、TRUE型の問題。 下記例データは質問と違う勝手な範囲にしているから、自分で修正して。 例データ A列 B列(=コード)下記では右端の1桁 A2以下データ 2010/2/3 1 2010/2/5 1 2010/2/7 1 2010/2/9 1 2010/2/11 1 2010/2/13 1 2010/2/15 2 2010/2/17 2 2010/2/19 2 2010/2/21 2 2010/2/23 2 2010/2/25 3 2010/2/27 3 2010/3/1 4 2010/3/3 4 2010/3/5 4 2010/3/7 4 2010/3/9 4 2010/3/11 5 2010/3/13 5 2010/3/15 5 2010/3/17 5 検索表を何処でも良いがD1:E5に 2010/2/1 1 2010/2/15 2 2010/2/25 3 2010/3/1 4 2010/3/10 5 作っておく。 ーーー 区間の見方 x(含む)からyの前までなら、Aをセット X---> A ↑ Y B2セルに =VLOOKUP(A2,$D$1:$E$5,2,TRUE) ーーー これが出来るのは、日付はエクセルシートでは、日付シリアル値という正整数なのだから、正整数で区切る範囲にコードを振るのと同じなのだ。 (1から5までは1、6から10目では2、11-15までは3・・と同じ) 文字列で日付を入れていると、このようにはできない。
- tom04
- ベストアンサー率49% (2537/5117)
- mu2011
- ベストアンサー率38% (1910/4994)
ご例示の条件では難しい(3を表示する条件が他の条件と重複している)、入力条件等が不明ですがVLOOKUP関数でご検討下さい。