Excel講座

基本的な関数

本章で用いる実習用ファイル

四則演算だけで様々な計算をするには限界がある。複雑な計算を効率的に行うために関数が用意されている。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉0
8小野83
9小野田72
10秋山79
11平均=(B2+B3+B4+B5+B6+B7+B8+B9+B10)/9
12

9人のテスト結果から平均点を求めたいとする。四則演算で計算しようとすると9人の点数を合計して、9で除する。平均点は73.56である。

しかし浅倉はテストを欠席しており、当初「0」点と扱っていたが、平均点算出からは外すことになった。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉
8小野83
9小野田72
10秋山79
11平均73.5556
12

セルB7の「0」を削除するだけだと、空白は「0」と同じ扱いをされるので、平均点は元のままである。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11平均#VALUE!
12

セルB7に欠損値「NA」(文字列「欠席」でも同じ)を入力すると、何やらエラーメッセージが表示される。

欲しい値は「8人分の点数の合計/8」(82.75)である。セルB7のデータが変更されるに応じて、正しい結果を得る、ということは四則演算ではできそうもない。ということで関数の出番である。

関数

得体の知れない複雑な処理を内部でこっそりやって、結果だけ教えてくれる宝箱

書式

=関数名(処理したい値1, 処理したい値2, …, 処理したい値n)

カンマ
  • 関数の()の中に入れる「処理したい値」を引数(ひきすう)argumentと呼ぶ。
    引数に入るデータの種類・その順序は関数によって決まっている。
  • 関数が諸々処理をして教えてくれる結果を戻り値return valueと呼ぶ。

合計:SUM(値1・範囲1, 値2・範囲2, …)

SUM関数は合計を算出したい数値を引数に取る(順序は問わない)。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11合計=SUM(B2,B3,B4,B5,B6,B7,B8,B9,B10)
12

これで9人の合計点が計算できる。また浅倉の点数(B7)に「NA」といった文字列を入力しても、結果に影響を与えない。

ただいちいち9つのセルを指定するのは効率が悪い。そこで連続しているセルは[範囲]として、一つの引数にまとめることができる。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11合計=SUM(B2:B10)
12
[範囲]

開始セル : 終了セル

コロン

平均:AVERAGE(値1・範囲1, 値2・範囲2, …)

AVERAGE関数は算術平均(相加平均arithmetic mean)を求めるための関数である。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11平均=AVERAGE(B2:B10)
12

浅倉(セルB7)の欄を空欄にしても、文字列(「NA」、「欠席」など)を入力しても、残りの8人の合計を8で除した結果を返す。もちろん後から浅倉の(追試験の)点数を入力したら、9人分の平均点を返す。

平均:AVERAGEA(値1・範囲1, 値2・範囲2, …)

AVERAGEA関数は算術平均(相加平均arithmetic mean)を求めるための関数である。引数中の文字列およびFALSEは0、TRUEは1が入力されているものと見なす。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11平均=AVERAGEA(B2:B10)
12

浅倉(セルB7)の欄を空欄にするとAVERAGE(B2:B10)と同じ結果を返すが、文字列(「NA」、「欠席」など)を入力すると浅倉分は0点と見なした平均点を返す。

---------A関数

関数の中に関数名の最後にAが付く関数がある。この関数はAが付かない関数とセットで存在し、引数中の

  • 文字列およびFALSE→0
  • TRUE→1

が入力されているものと見なして処理を行う。

最大値:MAX(値1・範囲1, 値2・範囲2, …), 最小値:MIN(値1・範囲1, 値2・範囲2, …)

MAX関数は指定数値・範囲の最大値を返す関数である。

MIN関数は指定数値・範囲の最小値を返す関数である。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11最大(MAX)=MAX(B2:B10)
12最小(MIN)=MIN(B2:B10)
13最大(MAXA)
14最小(MINA)
15

※MAXA, MINAを用いた結果を求め、比較してみよう。

数値の個数:COUNT(値1・範囲1, 値2・範囲2, …), 入力済みセルの個数:COUNTA(値1・範囲1, 値2・範囲2, …), [空白]セルの個数:COUNTBLANK(値1・範囲1, 値2・範囲2, …)

COUNT関数は指定値・範囲の数値データの個数を返す関数である。

COUNTA関数は指定値・範囲の中の入力済みセルの個数を返す関数である。

COUNTBLANK関数は指定値・範囲の中の[空白]セル(未入力セルではない)の個数を返す関数である。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11受験者数=COUNT(B2:B10)
11データ数=COUNTA(B2:B10)
12未入力数=COUNTBLANK(B2:B10)
13

※浅倉(セルB7)の欄を空欄にして、結果を比較してみよう。

未入力セルと空白セル
ABC
1Noデータ
21
32=IF(TRUE,"","")
43FALSE
5COUNT=COUNT(B2:B10)
6COUNTA=COUNTA(B2:B10)
7COUNTBLANK=COUNTBLANK(B2:B10)
8

セルB2は未入力セルであり、セルB3は常に[空白]となる。結果は

ABC
1Noデータ
21
32
43FALSE
5COUNT0
6COUNTA2
7COUNTBLANK2
8

中央値:MEDIAN(値1・範囲1, 値2・範囲2, …)

MEDIAN関数は中央値を求めるための関数である。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11中央値=MEDIAN(B2:B10)
12

中央値とは数値を大小順に並べたときに真ん中に来る値である(偶数個の時は中央の二つの算術平均)。

6872787983909597
12344321

大きい方からn番目:LARGE(値・範囲, 順位n), 小さい方からn番目:SMALL(値・範囲, 順位n)

LARGE関数は指定数値・範囲のなかで大きい方からn番目(数値)の値を返す関数である。

SMALL関数は指定数値・範囲のなかで小さい方からn番目(数値)の値を返す関数である。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11第二位=LARGE(B2:B10, 2)
12ブービー=SMALL(B2:B10, 2)
13

これまでの関数は引数の順序は不定だった(すべて結果を得たい値・範囲)。この関数は順位という要素が加わるため、引数の数と順序が厳密に定まる。

LARGE()関数・SMALL()関数、引数の数は2である(値・範囲, 順位n)。

複数の値・範囲を第一引数に指定したいときには(値1・範囲1, 値2・範囲2, …)のように()で一つの引数としてまとめる。

ABC
1点数
2山岸90
3小片95
4新沼78
5谷本68
6岸本97
7浅倉NA
8小野83
9小野田72
10秋山79
11第二位=LARGE((B2:B6, B8:B10), 2)
12ブービー=SMALL((B2:B6, B8:B10), 2)
13

浅倉を除いた範囲で、LARGE()関数、SMALL()関数を用いる。

第一引数
(B2:B6, B8:B10)
第二引数
2」(順位)

課題

下表の

  

を全て埋めて表を完成させよ。ただしセルに数式を入力するのは

  

のセルのみで、残りのセルはオートフィルを用いて入力すること。

課題:店舗売上(xlsx形式)

ABCDEF
1瀬田店大宮店深草店各月合計
21月125002400018000
32月15400220002150058900
43月25400260001650067900
54月13500240001750055000
65月14000265001850059000
76月17000270001750061500
8各店平均24916.6718250.00
9各店最高売上2700021500
10各店最低売上22000016500
11
12合計平均最高最低
13全店全期間3568001982.222700012500
14

課題:テスト点数(xlsx形式)

ABCDEFGHI
1国語英語数学社会理科平均数学以外の
平均
2中澤6634545787
3石黒645634875559.2065.50
4飯田8745欠席656462.2562.25
5安倍986764906576.8080.00
6福田欠席5636757267.67
7受験者数5455
8平均51.6047.0074.8068.60
9平均
欠席は0点
51.6037.6074.8068.60
10数学以外の
最大
98
11数学以外の
最小
34
12数学以外の
上位第二位
90
13数学以外の
下位第二位
45
14

課題:回答件数(xlsx形式)

ABCDE
1回答番号家族人数所得(千円)年齢
21525072
324NANA
43257055
54345034
651NA44
76216018
87448029
9全件数77
10有効件数56
11平均値38242
12