• ベストアンサー

エクセル間数式について

生年月日の範囲があり、その範囲内に該当するものに"◎"をしたいのですが、エクセル関数で表示できる式をご教示願います。 例えば、1行目S16.4.2~S18.4.1、2行目 S18.4.2~S20.4.1、3行目S20.4.2~S22.4.1----等あり、 関数式 =IF(and(Aセル>=Bセル,Aセル>=Cセル),"◎","")を作成したのですが、うまくいかないのです。Aは各誕生日を入力するセル位置です。 よろしくお願いします。

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

  • ベストアンサー
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.4

関数の問題ではないのでは 確認です 日付の表示形式を確認してください 確認方法 "S16.4.2"の入力されているセルを選択する 数式バーを見る、"1941/4/2" となっていますか 或いは入力セルを右クリックからセルの書式設定→表示設定を選択し 分類の標準を選択、サンプルを確認、"15068" となっていますか 確認方法のところで値が"S16.4.2"のままの場合は 期待する計算結果が得られません 理由 excelの内部では日付を数値化(シリアル値)しており 人は1941/4/2とS16.4.2や昭和16年4月2日を同じと分かりますが PC的にはには違う文字列と成ってしまいます そこで日付を数値化(基準日より何日経過したか)することによって初めて1941/4/2=15068とS16.4.2=15068は同じと判断します この機能を使用してexcelは計算しています 上記のような理由から、確認の所で"S16.4.2"のままの場合はもう一つ おまじないが必要です #1さんの回答から >正=IF(and(Aセル>=Bセル,Aセル<=Cセル),"◎","") を次のように変更します =IF(and(DATEVALUE(Aセル)>=DATEVALUE(Bセル),DATEVALUE(Aセル)<=DATEVALUE(Cセル)),"◎","") データ数が少なければ、セルの書式を日付にして入力しなおし 書式設定で表示を"S16.4.2"にすると、数式はそのまま使用できます 他にも方法はありますが、最初は地道に一つ一つ機能を覚えましょう

halissei27
質問者

お礼

御礼遅れました。ご親切な説明、ありがとうございました。 関数式を勉強始めたばかりですので、まだまだ理解とまではいきませんが、大変参考になりました。 解決いたしました。ありがとうございました。

その他の回答 (3)

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

>生年月日の範囲があり 生年月日の範囲とは何ですか。生年月日とは1つでは? 年金の受給開始などで、何年から何年月日までに生まれた人は、この条件に該当という説明があったりしますが、そういうことか? 突然こう書くとわかり難い。 ーー >1行目S16.4.2~S18.4.1 1行目B1にS16.4.2、C1にS18.4.1ということか? 式を書く前にそれをまず説明しないとだめ。 該当するかどうか、判断される主体はA列にある年月日データか。主体が書いてない。 =IF(AND(A1>B1,A1<C1),"◎","") で良いのでは。等号はどちらに付くか良く考えてください。 ーー 文章表現力を磨いて整理して考えれば、AND関数までわかっているのなら、何も難しいことは無いのでは?

halissei27
質問者

お礼

まったくそのとおりです。 ありがとうございました。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

#1様の回答通りに、入れてみると(例えば1行目として)  A1: S17.4.1  B1: S16.4.2  C1: S18.4.1  D1: =IF(AND(A5>=B5,A5<=C5),"◎","") とすれば、D1には◎が表示されますよ。 A~Cのセルの表示形式が日付けになっていないと、正しい比較がされませんのでご注意を。

halissei27
質問者

お礼

御礼遅れまして、本当にありがとうござした。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

Bセル<=Aセル<=Cセルの時に◎なら、不等号の向きを間違えてます。 誤=IF(and(Aセル>=Bセル,Aセル>=Cセル),"◎","") 正=IF(and(Aセル>=Bセル,Aセル<=Cセル),"◎","")

halissei27
質問者

補足

早速のご回答ありがとうございます。 ご指摘のようにやってみたのですが、全て空白表示になるのですが、------。Bセルは例えばS16.4.2でCセルはS18.4.1としています。表示箇所は行の頭にしています。

関連するQ&A

専門家に質問してみよう