• ベストアンサー

IF関数の式の作り方

エクセル初心者の事務員です。 今、会社でアルバイトさんの管理表を作成しています。 アルバイトさんは、1年以上の経験者を、リーダー候補とします。 通常のアルバイトさんと、リーダー候補のそれぞれの人数を表示したいです。 本やネットで調べて、 1.IF関数で1人づつがどちらにあたるかを文字表示する。 2.COUNT関数でそれぞれの人数を計算する。 という方法が使えるのではないかと思い、 =IF(H3+365<TODAY(),"アルバイト","リーダー候補") と打ち込みました。H3は入社日です。 しかし、この関数だと、どの日に入社した人も皆アルバイトになってしまいます。 質問は、 1・私の作った式は、どこが間違っているのか 2・人数を集計するのに、もっと直接数えるような方法がないか。 の2点です。 お忙しい中とは存知ますが、どうぞよろしくお願いします。

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

  • ベストアンサー
  • laputart
  • ベストアンサー率34% (288/843)
回答No.4

最終的にはIF関数一つで処理するのはスマートですが、その前に ステップを追って間違いを発見することが必要です。 エクセルの無地のテスト用のシートを開いて H3 に 2009/5/5 などの入社日を登録 H4 に =H3+365 H5 に =Today() そして H6に =IF(H3+365<TODAY(),"アルバイト","リーダー候補") と入力して、H3の値を変えて、H4,h6が同変化するかを観察すれば 答えが得られると思います。

chocopai
質問者

お礼

laputartさん、ありがとございます! 先ほど銀行から戻って、早速言われたとおりにしてみました。 そうして、符号が逆だということに気づきました。 日付がどうやって数値化されているのかネットで調べたら、1900年1月1日から、 順に足されていってるのですね。 間違いに気づいたら、どうして初め間違った答えを出したかが分からなくなってしまいました。 記憶力が減退してます。 自分で考えて分かったので、今度は忘れないはず! 考え方を丁寧に教えてくださって、ありがとうございます。

その他の回答 (7)

  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.8

Edate について エクセルの初期設定では使用できません。 ツール→アドイン→分析ツール をインストールしてください。 ところで > =IF(EDATE(H3,12))<TODAY(),"アルバイト","リーダー候補") >と入力してみましたが、「数式が間違っています」とエラー表示が出てきました。 →かっこの数が合わないので当然です。

chocopai
質問者

お礼

sinogiさん、2度目のアドバイス、ありがとうございます。 エクセルに分析ツールをインストールして、かっこの数を合わせたら・・・ できました! 皆様のお力添えで、見事うるう年が来ても大丈夫な正しい関数にたどり着きました。 本当に助かりました。 ありがとうございました。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.7

=IF(H3+365<TODAY(),"アルバイト","リーダー候補") 上の式は、入社日に365日を加えた日が今日より小さいときには、アルバイト、それ以外はリーダーとなります。 すなわち、入社日に365を加えて今日より大きい日は、今日より後の日です。したがって、今日から365を引いた日すなわちすなわち2008/5/20以前の入社日は、今日より小さい日となります。したがって入社日から1年を超える人は、すべてアルバイトと表示されるのです。 1年以上の経験者を、リーダー候補するには 式を =IF(H3+365>TODAY(),"アルバイト","リーダー候補")です。

chocopai
質問者

お礼

gyouda1114 さん、ありがとうございます! おっしゃるとおりです、私は逆の符号を使っていました。 書いたときは、自信満々だったんですが、間違ってました。 お恥ずかしいかぎりで。 この説明を読んで、更に腑に落ちました。 ありがとうございます。

noname#96417
noname#96417
回答No.6

細かいことですが、うるう年もあるので +365 はあまりよくないですね。 EDATE関数を利用されたらどうでしょう。

chocopai
質問者

お礼

q09さん、ありがとうございます。 うるう年のこと、全然考えていませんでした。ご指摘ありがとうございます! EDATE関数についても、初めて目にしました。 ネットで検索しました。 先ほど、 =IF(EDATE(H3,12))<TODAY(),"アルバイト","リーダー候補") と入力してみましたが、「数式が間違っています」とエラー表示が出てきました。 もう少し調べたいのですが、今から銀行にいかなければならないので、とりあえずご報告まで。 新しい知識を教えてくださって、ありがとうございます!

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.5

< → >

chocopai
質問者

お礼

30246kikuさん、ありがとうございます。 →の左右に、どんな情報があるのか気になります・・・

noname#99913
noname#99913
回答No.3

式は間違っていません。また、H3の内容が日付以外でしたらエラー表示が出ますから、H3の書式も間違っていません。おそらく、H3に入力された日付がおかしいのだと思います。 どのような日付を入力したのかを書いてください。

chocopai
質問者

お礼

kozirou54さん、ありがとうございます! お礼が遅くなってすみません。 日付ですが、全体は2006/06/02から2009/05/29までで、 H3には、2006/09/04と記入していました。

  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.2

H3の内容がダメなんだと思います 他のセルに =H3 と入力して、どのように表示されるか確認してください H3が日付として認識できない形式なんでしょう 例: 「平成20年5月19日」「2008/5/19」「H20.5.19」ならば日付として扱えますが 「2008.5.19」では日付として認識されません

chocopai
質問者

お礼

Cupperさん、ありがとうございます! お礼が遅くなってしまって、すみません。 ちゃんと日付表記にしてましたよ~と胸を張りたいところですが、 初め、正にドットで区切ってました。 そういうところからの勉強なので、先は長そうです。 教えてくださって、ありがとうございました。

  • Sinogi
  • ベストアンサー率27% (72/260)
回答No.1

その式をコピーしたセルをよくご覧になりましたか?

chocopai
質問者

お礼

Sinogiさん、ありがとうございます!! お礼の順番が逆になってしまってました、すみません。 入社日は、初めどんな関数をいれてもエラーになってしましました。 おかしいと思って本を見たら、ドットで区切っていると日付として認識されないようなことが書いてあったので、/に直しました。 すると、一応答えがでるけれど、私の求めるものではなかったのです。 頑張って勉強しますね・・・。

関連するQ&A

専門家に質問してみよう