得点表示の極意(2) ~基本の関数~
どうもあざらしです。
これ書いたの7月初旬なんですが、ほんとに暑いですよね。
私は寒冷地のアザラシを目指しているので、あいにくハワイモンクアザラシのような温度耐性は持ってないんですよ。
てことで本題の基本の関数。
今回学ぶのは、どんなルールでも、どんな計算でも絶対に使う、これを知らなきゃ話にならないレベルのものです。
小学校卒業できてたら分かるはずです。
頑張ろうー
1.数式の組み方
そもそも数式ってどうやって組めばいいのでしょうか。
セルに、
=(組みたい数式)
以上です。
ちなみに = がないと、(組みたい数式)が計算されずにそのまま表示されます。
1.セルの参照
画像のように、
=A1
と打ち込むと、A1セルに記入されている「A」という値が返されます。
2.セルの参照【間違え版】
しかしこのように
A1
のみを打ち込むとどうでしょうか。
これは最初に = がなく、数式ではないとみなされてしまうため、打ち込んだ内容がそのまま返されます。
ちなみに、
=a1
のように小文字で打っても構いません。
Excel側が勝手に大文字に変換してくれます。
2.基本の演算子
「演算子」なんて小難しい言葉を使いましたが、要するに + とか = とか、小学校卒業できてたら分かるものです。
表に書いてある通りです。
≠ が <> になっているくらいで、後は数学で普通に使うままですね。
余談ですが「A<>B」は、「A<B もしくは A>B」 という意味で、
B の取り得る範囲がこのようになるということを指します。
この図から、A<>B は「AとBは等しくない」という意味であることが分かります。
つまり、「A<=B」は「A<B もしくは A=B」という意味で「以上」に、
「A>=B」は「A>B もしくは A=B」という意味で「以下」になるんですね。
以上、必要ない知識コーナーでした。
3.SUM関数
範囲の数字を全て足し合わせる関数です。
基本形は、
=SUM(範囲1,範囲2,……)
1.基本形
E2セルに、
=SUM(B1:C2)
と入力してあります。
この場合、B1とC2で囲まれた範囲、
上記の画像の範囲にある数が全て足されています。
2.複数範囲の参照
E4セルに、
=SUM(B1:C1,B3:C4)
と入力してあります。
このように、複数の範囲を ,(カンマ)で区切った場合、それぞれの範囲にある数値が全て足されることになります。
4.COUNT関数
数値が入力されているセルの数を数える関数です。
基本形は、
=COUNT(範囲1,範囲2,……)
E2セルに、
=COUNT(A1:C4)
と入力されています。
この場合、数値が入力されているセルは、
この範囲の8つになるにで、「8」という値が返されます。
SUM関数と同様にカンマで区切ると複数範囲で計算できます。
5.COUNTA関数
何かしらが入力されているセルの数を数える関数です。
基本形は、
=COUNTA(範囲1,範囲2,……)
E2セルに、
=COUNTA(A1:C4)
と入力されています。
また、C4セルには空白になるような数式を打ってあります。
しかし、C4セルは空白ですが何も入力されていないわけではありません。
よって「12」という値が返されます。
これもカンマ区切りできます。
ちなみに空白のセルの数を数えるには、COUNTBLANK関数を使用します。
用法は同じです。
6.COUNTIF関数
指定した値が入力されているセルの数を数える関数です。
基本形は、
=COUNTIF(検索範囲,検索値)
1.基本形
F2セルに、
=COUNTIF(A1:D4,3)
と入力されています。
これは、「A1:D4 の範囲に、3 はいくつありますか?」と聞いているという意味です。
よって「2」という値が返されます。
2.値の指定【間違え版】
ではこのように、
=COUNTIF(A1:D4,C)
と入力してみてはどうでしょうか。
一見「2」と返してくれそうですが、これはエラーになってしまいます。
なぜか。
理由は 「C」は数値ではないから です。
プログラムの基本に「文字列は ”(ダブルクォーテーション)で囲わないといけない」というものがあります。
Excelもこれに準ずるので今回であれば、
=COUNTIF(A1:D4,”C”)
と打ち込まなければいけないわけです。
しっかり計算してくれましたね。
7.VLOOKUP関数
条件に合う値が入力されているセルの右横にあるセルの値を取り出す関数です。
基本形は、
=VLOOKUP(検索値,検索範囲,列数,(検索方法))
※ 検索方法を入力しない場合、TRUE になる。
検索方法には以下の2種類があります。
FALSE か 0
→ 検索値が無かったらエラーTRUE か 1
→ 検索値が無かったら検索値に最も近いセルを参照する
基本は FALSEか0 で完全一致にしましょう。
理由は後述します。
1.基本形
E2セルに、
=VLOOKUP(1,A1:C5,2)
と入力されています。
A1:C5 の範囲で、検索値である「1」が入力されているセルは A1 です。
そのセルを含めて「2」列目にあるセルは B1 になります。
よって B1 セルの値である「a」が返されます。
画像のように、
=VLOOKUP(“A”,A1:C5,3)
と入力した場合、A5 含めて「3」列目が参照されるので、
「C」という値が返ってくるというわけです。
2.完全一致
=VLOOKUP(3,A1:C5,3,FALSE)
と入力しました。
しかし範囲内に「3」と入力されたセルがないので、エラーになってしまいます。
3.完全一致にすべき理由
=VLOOKUP(5,A1:C5,2)
「5」と入力されているセルの2列目を参照するので、B2セルの「e」という値が返されるはずです。
しかしなぜか、その下のセルが参照されてしまっています。
なんでだろう、、、
私も理由が知りたいです。
このように完全一致の形式にしてあげると、しっかり求めていた値が返ってきます。
原則は完全一致にしましょう。
ちなみに上図のように、参照範囲を列全体にすると解消します。
情報科の教師、学友(笑)と理由について議論したんですが、わかりませんでした。
8.IF関数
計算式が正しい場合と、間違えている場合表示内容を分けられる関数です。
基本形は、
=IF(計算式,計算が正しい時に表示する値,間違っている時の値)
1.計算が正しい場合
=IF(A1>=0,A1,”0以上の数字を入力してください”)
と入力してあります。
A1は「1」なので、A1>=0 という計算は正しいです。
したがって、A1の値が返されます。
2.計算が間違えている場合
=IF(A3>=0,A3,”0以上の数字を入力してください”)
先ほどの数式と参照先が違うだけでほぼ同じです。
今回は、A3の値は「-1」なので、A3>=0 という計算は間違えています。
したがって、「0以上の数字を入力してください」という文字列が返されるのです。
3.IF関数の入れ子
=IF(A1>0,"正の数",IF(A1=0,"どっちでもない",”負の数")))
C2、C3は参照先がA2、A3になっているだけでほぼ同じ内容です。
これをフローチャートにしてあげるとこのようになります。
前の部分から順番に判断をしている訳です。
IF(◇◇,○,×) とある時、
1つ目のカンマがYESに分岐する矢印、
2つ目のカンマがNOに分岐する矢印
の役割をしています。
いかかでしたか。
次回は問題数の表示についてを話す予定です。
8月初めには公開できればと思います。
ではまた。
この記事が気に入ったらサポートをしてみませんか?