「これはヤバかったな」という遅刻エピソード

昨日、解決したと思って回答をしめっきった矢先に(ママチャリさま、ありがとうございました)、もう一つ問題があることに気付きました。

GoogleDriveのEXCELで条件付書式を使い、最小値から3つあるいは2つに色をつける方法を質問させていただきました。
大学で学生の成績をGoogleDriveのスプレッドシートに入力しているのですが、出欠表を「出席2」「遅刻1」「欠席0」とつけています。列に日付、行に学生名が入っています。学期の最後に悪い成績から3つ落とせるようになっています。例えば、欠席(0)2回、遅刻(1)1回の場合はこの3つを落として成績を出します。もちろん、0や1が成績にまったくなければ、この学生は悪い成績はないので、落とす必要はないことになります。

この場合の式は(学生の成績がD102からBU102まで入っているとして)、
=if(D102=0,countif($D102:D102,0)<=3,if(D102=1,countif($D102:$BU102,0)+countif($D102:D102,1)<=3))

であるということを教えていただきました。

出欠の場合はこれでめでたく解決したのですが、もう一つの「宿題」が厄介であることに気付きました。出欠と同じような成績の付け方をしていますが、違う点は、「完全に宿題をしてきた場合 2」「忘れた場合 0」のほかに、部分的にやってきた場合、「1」「1.5」「0.5」のバリエーションがあることです。宿題は、悪い成績から2つ落とせることになっています。

自分でやってみたのですが、おそらく式の読み方を間違っているようで、うまく行きません。どうか、ご教示ください。

質問者からの補足コメント

  • うーん・・・

    ママチャリさま、
    何度もありがとうございます。
    説明が長くて、意味が不明だった点があるかもしれませんので、ここで整理しておきます。

    「出欠」
    データは「0」「1」「2」の3種類で、学年によっては、下から3つ落とせたり、2つ落とせたりする(<=2の部分を操作する、と解釈しています)。
    「宿題」
    データは基本的に「0」「2」だが、部分点として「0.5」「1」「1.5」の場合がある。現在私が教えている学年では、2つまで落とせるのが通常。

    今回の式は、「出欠」「宿題」のどちらにも使えるということでしょうか?前回までの「<=2」の意味は、「落とすものが2つ以下」だったと思うのですが、「最後の「<=2」→「<=3」にすれば、成績でも使えます。」というのは、どんな数字が来ても落としたいかずだけ落とせる、と解釈してもいいでしょうか?試してみましたが(別のシートを作って)今回の式では何も起こりません。

    No.1の回答に寄せられた補足コメントです。 補足日時:2016/05/07 11:04
  • うーん・・・

    おはようございます。
    現在、全ての作業が終わってしまっているので(他の先生とシェアして入力しているため)、コピーを作って、自分が担当するクラスで試してみました。

    今度は何も起こらない、ということはなかったのですが、学生によっては「1.5」を返さなければいけないのに、返していないようです。

    いただいた式も式の意味も正しいと思うのですが(と、素人の私が言うのもなんですが)、なぜでしょうか??

    No.2の回答に寄せられた補足コメントです。 補足日時:2016/05/07 21:00

A 回答 (3件)

おはようございます。

ママチャリです。
前回の回答よりシンプルになってしまいました。最後の「<=2」→「<=3」にすれば、成績でも使えます。

=if(D102<>2,countif($D102:$BU102,"<"&D102)+countif($D102:D102,D102)<=2)
この回答への補足あり
    • good
    • 0
この回答へのお礼

ベストアンサーにすでに選ばせていただいていると思っていました。
改めて、お礼申し上げます。

お礼日時:2016/05/10 23:13

ママチャリです。

なぜでしょうかね~???
とりあえず、設定した条件式を補足に張り付けて頂いてもよろしいでしょうか?

念のため確認なのですが、「1.5」は数値として入力されているのですよね?文字ではないですよね?また、数式で求めたりもしていませんよね?さらに、1.54を四捨五入して1.5で表示していると云うこともないですよね?
その他、何か変わったことしていないでしょうか?
    • good
    • 0

>どんな数字が来ても落としたいかずだけ落とせる


はい。そのつもりで作りました。ただし、2は満点なので、落ちることはありません。
「何も起こらない」とのことですが、おかしいですね~。
式の意味は以下の通りなのですが、どこかおかしいところありますでしょうか?(質問者さんに質問するのもおかしな話なのですが…)

=if(D102<>2,countif($D102:$BU102,"<"&D102)+countif($D102:D102,D102)<=2)

【式の意味】
D102(自身のセル)が2でない、かつ、次の個数の合計が、2以下の場合、TRUEを返します。
・$D102~$BU102のうち、自身のセル(D102)より小さいものの個数
・$D102~自身のセル(D102)のうち、自身のセルと同じものの個数

書式の設定(背景を赤にするとか)を忘れていたりしないですよね?
この回答への補足あり
    • good
    • 0
この回答へのお礼

助かりました

ママチャリ様、

結果から言って、できました!はじめに教えていただいたものは出欠についてでしたが、今回は宿題で、列の数が違うことを忘れていて、そのままで入力していました。列名を変えれば、ちゃんと「1.5」も拾ってくれました。

前に教えていただいた式でも十分作業がはかどり、今回のを使えば、学期末の作業がどれだけ軽減されるか!
今学期はもう作業が終わってしまいましたが、今度は12月に発揮できます。
おいそがしい中、本当に、本当に、ありがとうございました!

お礼日時:2016/05/07 21:14

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


おすすめ情報