数値範囲に基づいて文字の等級を割り当てるスプレッドシートの数式


8

値が2つの値の間にある場合に「true」になるIFステートメントの記述方法を理解しようとしています。

例:

値が60〜69.9の場合、「D」を返します

値が70〜79.9の場合、「C」を返します

値が80〜89.9の場合、「B」を返します

私はこれを持っていますが、それを変更する方法がわからないので、テストが小なりまたは大なりではなく中間にあります。

=IF(A1<60, "F", IF(A1>60, "A", 0))

回答:


8

不等号を同じ方向に保つ:

=IF(A1<60, "F", IF(A1<70, "D", IF(A1<80, "C", IF(A1<90, "B", "A"))))

上記は、ケースが多すぎない限り問題なく動作します。ただし、C-、C +、B-、B +などの多くのオプションがある場合は、代わりにルックアップテーブルを使用することをお勧めします。たとえば、以下のようなルックアップテーブルがある場合、

=vlookup(A1, $K$1:$L$5) 

ネストされたIFと同じ働きをします。また、変更があった場合のテーブルの保守も簡単です。たとえば、カットオフを移動することにしたとします。

+---+----+---+
|   | K  | L |
+---+----+---+
| 1 |  0 | F |
| 2 | 60 | D |
| 3 | 70 | C |
| 4 | 80 | B |
| 5 | 90 | A |
+---+----+---+

Googleドキュメントのvlookupに3番目の引数は必要ありませんか?
Ellen Spertus

3

Googleドキュメントヘルプフォーラムから取得した別のソリューションでは、カットオフを数式で直接維持するため、個別に維持する必要がありません。

OPで定義されたカットオフの場合、式は次のとおりです。

=VLOOKUP($A1,{0,"F";60,"D";70,"C";80,"B";90,"A"},2)

カットオフの変更は今や厄介に思えるかもしれませんが、次のように効率的に行うことができます。そして、一番上のセルに数式でカットオフを変更し、fill down実行してCMD-Dか、CTRL-Dご使用のプラットフォームに依存。


3

私は@wsaleemのカットオフを変更して-/ +グレードを含めました(私の大学のスケールごと):

=VLOOKUP(BB2,{0,"F";60,"D-";63,"D";68,"D+";70,"C-";73,"C";78,"C+";80,"B-";83,"B";88,"B+";90,"A-";93,"A"},2)

入力値は必ずROUND()してください。私はAVERAGE()を使用していましたが、フィールドは明らかに丸められていますが、値は丸められていませんでした。


文字の等級をGPA番号に変換しようとしています。文字のグレードがO列にあるときに、次のVLOOKUPを試しました:= vlookup($ O2、{F、 "0"; D、 "1.0"; C-、 "1.67"; C、 "2.0"; C +、 " 2.33 "; B-、" 2.67 "; B、" 3.0 "; B +、" 3.33 "; A-、" 3.67 "; A、" 4.0 "} 2)何をしているのか本当にわからない。終わり括弧の後、ただし終わり括弧の前の最後の「2」は何ですか?
user205307

範囲と2の間にコンマがありません(これらはコンマ区切りのパラメーターです)。ドキュメントsupport.google.com/docs/answer/3093318?hl=ja
ow3n
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.