プロが教えるわが家の防犯対策術!

エクセル初心者の事務員です。

今、会社でアルバイトさんの管理表を作成しています。
アルバイトさんは、1年以上の経験者を、リーダー候補とします。
通常のアルバイトさんと、リーダー候補のそれぞれの人数を表示したいです。

本やネットで調べて、
1.IF関数で1人づつがどちらにあたるかを文字表示する。
2.COUNT関数でそれぞれの人数を計算する。
という方法が使えるのではないかと思い、

=IF(H3+365<TODAY(),"アルバイト","リーダー候補")
と打ち込みました。H3は入社日です。
しかし、この関数だと、どの日に入社した人も皆アルバイトになってしまいます。

質問は、
1・私の作った式は、どこが間違っているのか
2・人数を集計するのに、もっと直接数えるような方法がないか。

の2点です。
お忙しい中とは存知ますが、どうぞよろしくお願いします。

A 回答 (8件)

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

    • good
    • 0
この回答へのお礼

Sinogiさん、ありがとうございます!!

お礼の順番が逆になってしまってました、すみません。

入社日は、初めどんな関数をいれてもエラーになってしましました。
おかしいと思って本を見たら、ドットで区切っていると日付として認識されないようなことが書いてあったので、/に直しました。
すると、一応答えがでるけれど、私の求めるものではなかったのです。

頑張って勉強しますね・・・。

お礼日時:2009/05/20 15:33

H3の内容がダメなんだと思います



他のセルに =H3 と入力して、どのように表示されるか確認してください
H3が日付として認識できない形式なんでしょう

例:
「平成20年5月19日」「2008/5/19」「H20.5.19」ならば日付として扱えますが
「2008.5.19」では日付として認識されません
    • good
    • 0
この回答へのお礼

Cupperさん、ありがとうございます!
お礼が遅くなってしまって、すみません。

ちゃんと日付表記にしてましたよ~と胸を張りたいところですが、
初め、正にドットで区切ってました。

そういうところからの勉強なので、先は長そうです。

教えてくださって、ありがとうございました。

お礼日時:2009/05/20 15:37

式は間違っていません。

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

どのような日付を入力したのかを書いてください。
    • good
    • 0
この回答へのお礼

kozirou54さん、ありがとうございます!
お礼が遅くなってすみません。

日付ですが、全体は2006/06/02から2009/05/29までで、
H3には、2006/09/04と記入していました。

お礼日時:2009/05/20 15:41

最終的にはIF関数一つで処理するのはスマートですが、その前に


ステップを追って間違いを発見することが必要です。

エクセルの無地のテスト用のシートを開いて
H3 に 2009/5/5 などの入社日を登録
H4 に =H3+365
H5 に =Today()
そして H6に
=IF(H3+365<TODAY(),"アルバイト","リーダー候補")
と入力して、H3の値を変えて、H4,h6が同変化するかを観察すれば
答えが得られると思います。
    • good
    • 0
この回答へのお礼

laputartさん、ありがとございます!

先ほど銀行から戻って、早速言われたとおりにしてみました。
そうして、符号が逆だということに気づきました。
日付がどうやって数値化されているのかネットで調べたら、1900年1月1日から、
順に足されていってるのですね。

間違いに気づいたら、どうして初め間違った答えを出したかが分からなくなってしまいました。
記憶力が減退してます。

自分で考えて分かったので、今度は忘れないはず!
考え方を丁寧に教えてくださって、ありがとうございます。

お礼日時:2009/05/20 15:23

< → >

    • good
    • 0
この回答へのお礼

30246kikuさん、ありがとうございます。

→の左右に、どんな情報があるのか気になります・・・

お礼日時:2009/05/20 13:50

細かいことですが、うるう年もあるので +365 はあまりよくないですね。


EDATE関数を利用されたらどうでしょう。
    • good
    • 0
この回答へのお礼

q09さん、ありがとうございます。

うるう年のこと、全然考えていませんでした。ご指摘ありがとうございます!

EDATE関数についても、初めて目にしました。
ネットで検索しました。
先ほど、 =IF(EDATE(H3,12))<TODAY(),"アルバイト","リーダー候補")
と入力してみましたが、「数式が間違っています」とエラー表示が出てきました。

もう少し調べたいのですが、今から銀行にいかなければならないので、とりあえずご報告まで。

新しい知識を教えてくださって、ありがとうございます!

お礼日時:2009/05/20 13:48

=IF(H3+365<TODAY(),"アルバイト","リーダー候補")


上の式は、入社日に365日を加えた日が今日より小さいときには、アルバイト、それ以外はリーダーとなります。
すなわち、入社日に365を加えて今日より大きい日は、今日より後の日です。したがって、今日から365を引いた日すなわちすなわち2008/5/20以前の入社日は、今日より小さい日となります。したがって入社日から1年を超える人は、すべてアルバイトと表示されるのです。

1年以上の経験者を、リーダー候補するには
式を =IF(H3+365>TODAY(),"アルバイト","リーダー候補")です。
    • good
    • 0
この回答へのお礼

gyouda1114 さん、ありがとうございます!

おっしゃるとおりです、私は逆の符号を使っていました。
書いたときは、自信満々だったんですが、間違ってました。
お恥ずかしいかぎりで。

この説明を読んで、更に腑に落ちました。

ありがとうございます。

お礼日時:2009/05/20 15:48

Edate について


エクセルの初期設定では使用できません。

ツール→アドイン→分析ツール をインストールしてください。


ところで
> =IF(EDATE(H3,12))<TODAY(),"アルバイト","リーダー候補")
>と入力してみましたが、「数式が間違っています」とエラー表示が出てきました。

→かっこの数が合わないので当然です。
    • good
    • 0
この回答へのお礼

sinogiさん、2度目のアドバイス、ありがとうございます。

エクセルに分析ツールをインストールして、かっこの数を合わせたら・・・
できました!

皆様のお力添えで、見事うるう年が来ても大丈夫な正しい関数にたどり着きました。

本当に助かりました。
ありがとうございました。

お礼日時:2009/05/20 15:58

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!