- ベストアンサー
エクセルの数式
エクセルの数式の質問です 例えば 佐藤さんがいて、その佐藤さんは甲項目はA、乙項目はB、丙項目はC、丁項目はAという評価だったとします。 会社の基準では、Aは10点、Bは5点、Cは1点と決められています。 この場合、佐藤さんの合計得点は26点になりますが、これを数式で一発で表したい場合、どのように数式を組み立てたらいいのでしょうか。 評価の欄にAやBを打ち込むだけで自動的に26点と出てくるようにしたいのですが・・・
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
評価が A1からD1に入っているとして、 こんなのでもできると思います。 =SUM(COUNTIF(A1:D1,{"A","B","C"})*{10,5,1}) 普通に Enterで確定です。 A、B、Cと全角で入力しているなら 数式のA、B、Cも全角にしてください。 =SUM(COUNTIF(A1:D1,{"A","B","C"})*{10,5,1})
その他の回答 (4)
- imogasi
- ベストアンサー率27% (4737/17069)
#3です。#3と同じく配列数式ですが、別解でできそうなので報告します。 例データ 佐藤 甲 B 乙 A 丙 C 丁 B とします。 (1) =SUM(IF(B2:B5="A",10,IF(B2:B5="B",5,1))) と入れて、SHIFT+CTRL+ENTERを同時に押す。 (2)2セルを指定して =SUM(VLOOKUP(B2:B5,$H$2:$I$4,2,FALSE)) または =SUM(VLOOKUP(B2:B5,{"A",10;"B",5;"C",1},2,FALSE)) と入れて、SHIFT+CTRL+ENTERを同時に押す。 結果は21です。 H2:H4に A 10 B 5 C 1 と入れてます。 なぜ2セル指定が必要か、浅学で私には、わかっていません。
- imogasi
- ベストアンサー率27% (4737/17069)
配列数式による回答例 例データ 甲 乙 丙 丁 佐藤 A C C A 22 大田 C A B C 17 鈴木 C B B B 16 F2に =SUM(IF(B2:E2="A",10,0))+SUM(IF(B2:E2="B",5,0))+SUM(IF(B2:E2="C",1,0)) と入れてSHIFT+CTRL+ENTERの3つのキーを同時押しする。 F2の式をF5まで複写する。 結果上記F列の通り。 上記の式はその形に繰り返し的箇所があり長いので、もう少しコンパクトにならないか考えたが、考え及ばず上記で出します。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 こういうことかな? =SUMPRODUCT(LOOKUP(A1:A4,{0;"A";"B";"C"},{0;10;5;1}))
甲乙丙丁がA~Dの1行目として下記のようにすれば出来ますが、 恐らくもっとスマートな方法があるはず!! =COUNTIF(A1:D1,"A")*10+COUNTIF(A1:D1,"B")*5+COUNTIF(A1:D1,"C")*1