• 締切済み

エクセル関数について

条件として 例えば H20.1.1~H20,12.31生まれ のように 日にちに範囲をつけ それに該当する場合に 「お祝い」という文字を表示させたい場合は 何の関数をどのように使えばよいのでしょうか セルA  生年月日を入力 セルB  (条件の範囲の中に誕生日があれば) 「お祝い」と表示

みんなの回答

  • ogawa_sora
  • ベストアンサー率36% (468/1280)
回答No.2

今晩は。 これは、誕生日と言う事ですか? そうであれば、簡単な式を書きます。 最初に、誕生日には年は必要ないので、日付を入力する範囲をセルの書 式設定で文字列に指定します。 そして、どこかに今日の日付を入力するセルを設定します。(文字列指定します) 「お祝い」と表示したい範囲の先頭セルに下記を入力します。 =IF($を付けて日付の入っているセルの範囲=$を付けて今日の日付の入っているセル,”お祝い”,””) これは、日付と言っても、同じ文字を検索して表示しているだけです。 例      A       B    C      D 1                    今日の日付 2 生年月日   氏名   備考   3 日付 4 日付 5 日付 6 日付 7 日付 8 日付 9 日付 10 日付 このように作成したとして。 1.A3~A10とD1を「セルの書式設定」で文字列を指定 2.C3セルに =IF($A$3:$A$10=$D$1,"お祝い","")   と入力 3.C4~C10までコピー これで、備考欄に該当の日付の所に「お祝い」と出ます。 ※日付(今日の日付も同じ)の入力は文字で「○月○日」と入力します(日付データではありません)  日付データで入力するとA列の日付を毎年入力し直す必要があるため  面倒です。  仮に、日付データやるのであれば。(A列を毎年入力し直すとして)  ・A3~A10とD1を「セルの書式設定」で「日付」「○月○日」を指定  ・D1セルに =TODAY() と入力すれば  式はそのままで、同じ結果が出ます。(D1セルは入力しなくても自動で今日の日付になります) 趣旨と違っていたらすいません。

muan-jai00
質問者

お礼

ありがとうございます 質問の書き方が不十分で教えてくださったこととは違ってしまいました。すみません 希望は 回答の1番のかたのところに書いたのですが 生年月日が○年○月○日から×年×月×日までの間に当てはまる人ならば セルCに文字がでるようにしたい・・というようなものです その 範囲(○年○月○日~×年×月×日)は複数あります

noname#180098
noname#180098
回答No.1

普通にIF関数を使ってはいかがでしょう。 ただしこの場合、条件に日付を入れることになりますが、日付はダブルクォーテーションで(”)で「"H20.1.1"」のように囲んでください。こうしないと日付として認識されません。 すると、H20.1.1以上で、H20.12.31以下であるときに"お祝い"と表示させれば良いのですから、 IF("H20.1.1"<=生年月日,IF(生年月日<="H20.12.31","お祝い",""),"") と表現できます。 日付をどこかのセルに入力して範囲を決めたいのであれば、そのセルの値と比較になります。 A1=H20.1.1 、B1=H20.12.31 の場合、 IF(A1<=生年月日,IF(生年月日<=B1,"お祝い",""),"") これでスッキリします。 別回答として IF(AND(A1<=生年月日,生年月日<=B1),"お祝い","") こんな方法もあります。このほうがスマートですね。 範囲が「H20.1.1~H20.12.31」など、文字列として入力されている場合は別途日付を切り出すための処理を必要とします。

muan-jai00
質問者

お礼

ありがとうございます 希望は今年「成人式」「還暦」「古希」「米寿」「白寿」を迎える人に 一斉にお祝いを送りたいのです。 学年単位の年で区切りたいので H1.4.2~H2.4.1生まれの人、s24.4.2~s25.4.1、s7.4.1~s8.4.1・・・・と ○年○月○日~×年×月×日までの人には「今年お祝いを贈るんだよ」というのが分かるように 『お祝い』という表示がさせたいです。 IFの文をコピーしてみて試してみたのですが エラーになってしまうのでやり方が間違ってしまったのかもしれないです もう一度試してみます

関連するQ&A

  • エクセルで範囲内の条件を満たす数値を返す関数を教えてください。

    エクセルで範囲内の条件を満たす数値を返す関数を教えてください。 100以下なら1111 100超~200以下なら2222 200超~300以下なら3333 300超~400以下なら4444 400超~500以下なら5555 500超~600以下なら6666 600超~700以下なら7777 700超~800以下なら8888 800超~900以下なら9999 900超なら10000 上記のような条件があり、入力した数字が該当する条件の範囲内に該当している数字を抽出したいのですが、それができる関数を教えてください。 例えばA1セルに650と入力するとB1セルに上記の条件で該当する7777を表示する、 A1セルに100と入力するとB1セルに1111、 901とA1に入力するとB1に10000と表示されるなどのようにしたいのです。 IFを使った関数では7つまでしかネストできないので、上記の場合10ネストしなければならないのでIF関数が使えません(使える方法があるかもしれませんが私は知りません)。 ネストせずに「&」を使う方法も考えたのですが、それだと数値として扱われず文字として扱われてしまい表示形式を自在に編集することができなくなってしまいます。 良い解決方法を教えてください。

  • Excelでどの関数を使えばいいですか?

    以前作られていたものが壊れてしまったようです。 次のような場合に、どの関数を使えばよいか教えてください。 A1のセルに「H16.5.18」と入っています。 (このセルは直接入力してあります) B1のセルに関数を使いたいのですが、 A1を参照して、B1には「H16.6」としたいのです。 つまり、A1のセルに入っている日付の次の月を B1に返したいのです。 A1は年月日ですが、B1に入る日付は年月のみです。 どうぞよろしくお願いします。

  • エクセル間数式について

    生年月日の範囲があり、その範囲内に該当するものに"◎"をしたいのですが、エクセル関数で表示できる式をご教示願います。 例えば、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は各誕生日を入力するセル位置です。 よろしくお願いします。

  • エクセル関数について(2)

    エクセルの関数で教えていただきたいことがあります。(XP使用) 1つのセルで3つの条件のうち、いづれかの条件を満たしている場合、文字を返したいのです。例えば・・・ 1行(A1から)には⇒1日~31日までの日付を入力します。 B1セル⇒2 B2セル⇒10 B3セル⇒25と数字を入力します。 C1セル~C31セル、1つづつに(B1セル、B2セル、B3セルの入力した数字、いづれかの条件を満たしていれば)「○」と文字を返す計算式を返したいのです。 以前は「2つの条件を返す関数」を聞いたのですが、3つ以上の条件をかえす場合があることに気づきました。 ORだと2つしか条件を返さないのですが・・・ すみません、よろしくお願い致します。

  • エクセル関数でおしえてください

    Aのセルに「する」「しない」のどちらかを入力するとして、 「する」と入力すると、Bのセルに「○」、 「しない」と入力するとCのせるに「○」、 と言う風に、表示する文字は「○」で同じでも、表示させるセルを変えたい場合、どの関数式をかいたらいいのか教えてください。 マクロはできれば使いたくないので、関数でお願いいたします。

  • エクセルの関数で・・・

    エクセルで領収書の整理をしています。 同じ日にちが続くときに日にちの入力をせずにしたいのですが、例えば A4が空白の時には上のセル(A3)と同じ日にちを表示する。空白でない場合は何も表示せずに自分で入力する。それを列全体に設定する。 といったようにしたいのですが… 本を見ながらIF関数で言葉通りの式を作ったつもりなのですが、何も入力しない空白の時には”0”が入りました。 関数はほとんど分からないもので、出来ればわかりやすく教えてください。

  • エクセル関数で

    例えば、某月の平日の日にちを指定した数だけ異なるセルにランダムに表示させるためにはどのような関数を使えばいいのでしょうか。  ABC 1 2 2 5 3 8 4 15 5 24   ↑   関数式入力でランダムに日にちを表示

  • エクセル関数式

    エクセル関数式で、セルA1に生年月日を入力、セルD1に25才時の年月日、セルE1に30才時の年月日を表示させるにはどうすれば良いでしょうか。

  • エクセルの関数を教えてください

    初心者です。ある範囲のセルの中で、文字が入力されているセルの数を返す関数と、使い方を教えてください。

  • こんな関数つくれますか?

    EXCELはやっと初心者を脱したかな、という感じです。 EXCELで出来た表に手を加えたいのですが、こんな関数作れるのでしょうか? シート1と2があります。2の中のあるセルに、シート1のA1~G1に入力された文字の略称を表示させたいのです。ただしA1~A10には、赤・青・黄・緑・茶といったように5つくらいの値が入力され、その中の一つを選んで表示させたいです。当然あまりの5つくらいのセルは空欄のままです。実際にはA1~N1くらいの範囲で、入力される色の種類も10以上、そのなかで6つくらいが入力される中で条件にあった一つを選び出させたいです。該当する値がないときはシート2のセルは空欄にしたいですし、できれば該当データが複数ある時はエラーを出させたいのです。 「VLOOKUP」なる関数も発見したのですが、難しくてよくわかりません。どうかお知恵を。