「関数」を初心者に説明するのも、初心者が理解するのも難しいことです。Yahoo知恵袋などの質問サイトでも、意味不明な質問をよく見かけます。
ところで、数学の世界では、「関数のカリー化」(curry=食べ物のカレーと同じスペル)という言葉があります。
このカリー化は、カレーライスとは関係ありませんが、「オートSUMは使えるけど、関数の意味がどうしてもわからない」という人は、一度、カレー屋さんに行って、おいしいカレーを注文してみてはいかがでしょうか。
ということで、今回は、「Excelの関数とは何か」について出題します。
目次
問題文のあとに簡単な操作方法を解説していますが、静止画では、わかりにくいと思いますので、最後に動画のリンクを載せています。ぜひご覧ください。
1.注文して受け取る
(1)関数とは注文である
問題
次の図でセルF2とG2に数式が入っている。「SUM」「AVERAGE」のような文字列を何というか。また、この文字列の一覧をすべて表示しなさい。
解説
Excelでは、計算は、原則として演算子(+-*/^&)を使います。合計は、足し算(+)で計算することができます。
しかし、Excelには、合計を計算する機能が付いています(参考:【Excel】合計はオートSUMボタンを押すだけ~!で済めば苦労はしない)。合計がオートSUMボタンで簡単に計算できるのは、「よく使う計算」として、あらかじめ用意されているからです。「SUM」というのは、合計の計算を表す名前です。
ここで、空白のセルを選択します。
[fx]関数の挿入のボタンを押します。
「すべて表示」にします。
これは、あらかじめ用意されている計算のリストであり、その計算をあらわす名前が表示されています。このリストの中から必要な計算を選んで利用します。このリストに載っている計算のことを、「ワークシート関数(Worksheet Function)」といい、略して、「関数」と呼んでいます。
関数のリストは、レストランのメニューに似ています。レストランでは、メニューに載っている料理を選びますが、Excelでは、関数のリストから関数を選びます。
オートSUMボタンを使うと、SUMやAVERAGEのような文字列が表示されますが、これは、あらかじめ用意されている関数のリストの中に、SUMやAVERAGEがあって、それを選んでいるという意味です。
SUMやAVERAGEのような文字列を、「関数名」といいます。
(2)メニューにないものを注文してはいけない
問題
次のように、つづりを間違えた場合はどのようになるか、述べなさい。
解説
関数名の綴りが正しくないために、関数の名前がメニューにない場合、エラーとなります。
レストランでは、メニューにないものを注文することはできません。Excelの場合も、関数の名前(NAME)を間違えて、リストにないものを注文してはいけません。
(3)呼び出しとリターン
問題
関数名の後には必ずカッコを入力する。このカッコの意味を説明しなさい。
解説
Excelでは、関数名のあとに、かっこを入力する決まりがあります。
レストランの場合、注文する料理が決まったら、店員を呼び出します。
店員に注文を伝えます。
そして、店員から料理を受け取ります。
このように、レストランの場合は、店員を呼び出して、料理名を伝えると、厨房で調理をします。その結果として、料理を受け取ることができます。
Excelの場合、関数名を選んだら、そのあとにかっこを入力します。このかっこは、Excelのプログラムに対して関数名を伝えて、その計算結果を受け取ることを表します。
Excelの計算プログラムに対して、関数名を伝えることをコール(call)、または、呼び出すといいます。
計算結果を受け取ることをリターン(Return)、または、返すといいます。
関数を呼び出すときには、関数名とカッコをかならず入力します。
2.受け取った後で付け足す
問題
次の数式の「=」「PI」「()」の意味をそれぞれ述べたうえで、どのような計算をしているのか説明しなさい。
解説
[fx]関数の挿入のボタンを押します。
「すべて表示」にします。
アルファベット順に並んでいます。
関数名を選択すると、呼び出した時にどのような結果が返ってくるのか、という説明が表示されます。PIは円周率を返す関数です。
[OK]ボタンを押すと、数式バーに数式が入力されます。
PIは、円周率を求める関数の名前(関数名)です。
かっこは、Excelのプログラムに対して関数名PIを伝えて(Call)、円周率3.14を受け取ること(Return)を表しています。
先頭のイコールは、受け取った円周率3.14をセルA1に代入することを表します。
数式の後に、「*100」と入力すると、円周率が100倍になります。
PIとかっこ()で、Excelから円周率3.14が返ってきます。
その計算結果を100倍してからセルA1に代入しています。
寿司屋で寿司を注文したときには、受け取った寿司に、自分で醤油をつけます。これと同じように、Excelから受け取った計算結果に、さらに自分で計算を付け足すことができます。
3.セルフサービス
(1)合計だからといってSUMとは限らない
問題
次の表を用いて100円玉350枚の重さの合計と金額の合計を求めなさい。また、コイン50枚の重さが185gのとき、1枚あたりの重さを求めなさい。
解説
100円玉350枚分の重さは、確かに、重さの「合計」ではありますが、オートSUMの合計を使ってはいけません。合計のSUM関数を使えば、何でも、合計が出てくるわけではありません。
当然、掛け算(4.8g*350枚)で求めます。
金額の合計は、枚数を絶対参照にしてからオートフィルをすれば終わりです。
例えば、レストランで、セルフサービスのものを、わざわざ店員を呼び出して注文することはありません。
これと同じように、関数を呼び出す必要がないのに、わざわざ関数を呼び出してはいけません。
掛け算で求められる合計のように、演算子で簡単に計算できる場合は、関数を用いてはいけません。
コインの総重量がわかっている場合、枚数で割ると平均の重さになりますが、これも平均の関数AVERAGEを呼び出して求めるのは間違いです。
(2)呼び出す必要が無いのに呼び出してはいけない
問題
割引前と割引後の金額を用いて、割引率を求めなさい。
解説
いっぱんに、パーセンテージのような割合の計算は、掛け算や割り算をすればよいので関数は不要です。
割引率は、100パーセントにあたる1から、増減率を引いて計算します。(参考:増減率をパーセントで求めるには、増減を表す比率から1を引くだけ)
このように、Excelの計算には、関数を呼び出す計算と、関数を使ってはいけない計算があります。
4.ご注文はお決まりですか?
問題
Excelで、100から300までの整数の「合計」を求めなさい。
解説
100と300だけを入力して、合計のSUM関数を使うことは不可能です。
SUM関数を使うのであれば、このようにオートフィルで連番を打ってから、全部の合計を求めます。答えは40200です。
ところで、100と300だけを入力して、総合計を求めるのは、次のような計算式を入力すればよいですが、これは、数学の公式なので、求め方を知らなければ入力することもできません。また、これを求める関数もありません。
関数は、求め方が分からない人のために用意しているのではなく、よく使う計算を呼び出すためのものです。表計算であまり使わない計算は、関数として用意されていません。
求め方が分からないからと言って、関数を呼び出せば解決できるというわけではありません。
求め方がわからない計算は、足し算・引き算・掛け算・割り算で計算できるのかを調べたほうがよいです。ネットで検索するのであれば、Excelの関数を探す前に、計算方法を探すべきです。
レストランで、何を食べたいのかがわからない状態で、店員を呼び出してはいけません。関数の場合も、計算の方法が分からないものは、関数を使っても答えは出ませんので、関数を呼び出そうとしてはいけません。
5.トッピング
(1)引数と戻り値
問題
セルF2とF3は、同じSUM関数を使用しているが、計算結果が異なっている。このように、同じ名前の関数を呼び出しているのに、戻り値が異なる理由を簡潔に述べなさい。
解説
Excelで関数を呼び出すのと、飲食店で料理を注文するのは同じです。
SUM関数を呼び出すと、合計が返ってきます。カツカレーを注文すると、カツカレーが運ばれてきます。このように、計算結果として返ってくる値のことを「戻り値(もどりち)」といいます。
レストランでは通常、単に「カツカレー」という注文を伝えるだけで、戻り値としてカツカレーが運ばれてきます。どの客が注文しても同じカツカレーが運ばれてきます。
しかし、カレー専門店の場合、「カツカレー」という注文を伝えると、辛さ、ライスの量、トッピング、サイドメニューのオーダーなどの条件を聞かれることがあります。
オプションなしで注文する人もいれば、辛さやライスの量を変えて注文する人もいます。このため、同じカツカレーでも、注文する人によって運ばれてくるカレーが異なります。
これは、関数も同じです。SUM関数を呼び出すときには、SUMという関数名を伝えるのと同時に、足し算をする前の値を同時に伝えます。
合計をした結果、戻り値が返ってきます。
関数名と同時に伝える条件のことを、「引数(ひきすう)」といいます。引数は、関数名のあとにカッコ書きをして表します(参考:Excel関数の引数(ひきすう)の意味、引数の絶対参照、範囲指定の注意点)。
セルF2とF3は、同じSUM関数を呼び出していますので、合計の計算を求めていることに変わりはありませんが、かっこの中の引数によって計算の条件が変わるので、戻り値も変わります。
(2)関数を呼び出すときの条件
問題
次の数式を入力するとエラーになった。それぞれ、理由を簡潔に述べなさい。
- =(A1:A100)MAX
- =MAX-MIN(A1:A100)
- =MAX(A1:A100)(C1:C100)
解説
引数のカッコ書きが、関数を呼び出すときの条件(オプション)であるということを理解しましょう。カッコ書きが関数名の前にあるのは明らかに不自然です。
また、関数を2回呼び出すのであれば、その条件である引数も2回必要です。
関数名のあとのカッコ書きは1つだけです。かっこを連続して使うことはできません。
ただし、カッコ書きの中でカンマを使って2つかくことはあります。
引数(オプション)が2個以上ある場合には、半角のカンマで区切って指定します。
1つ目の引数を第1引数といい、順に、第2引数、第3引数・・・といいます。
解説は以上です。
もし、この記事を最後まで読んでみて、うまく理解できなかった場合は、一晩寝かせてから読み直すと、味がしみこむように深く理解できると思います。
6.動画版はこちら(無料)
この問題と解説は、わえなびファンダメンタルExcel Program 11-1 、11-2 、11-5 の3本の動画を書き起こして、一部加筆修正したものです。
- ファンダメンタルExcel 11-1 関数とは注文である【わえなび】(ファンダメンタルExcel Program11 関数総論) - YouTube
- ファンダメンタルExcel 11-2 本当に関数が必要なのか【わえなび】(ファンダメンタルExcel Program11 関数総論) - YouTube
- ファンダメンタルExcel 11-5 引数1(引数の変更)【わえなび】(ファンダメンタルExcel Program11 関数総論) - YouTube
Youtubeでは、「関数総論」として、11本のシリーズ動画を公開しています。ぜひご覧ください。