基本情報技術者の午後試験「表計算」コツを解説!

こんにちは。わさおです。

今回はITの国家資格「基本情報技術者」の中でも午後試験「表計算」の攻略法について解説したいと思います。

午後試験はプログラミングの問題が必須となっているため、プログラミング未経験者には鬼門となっていますが、その中でも「表計算」は初学者でも比較的取り組みやすいとされています。

一つずつ解説していきますので、ぜひ皆様参考にしていただければ幸いです。

1.「表計算」攻略の基本戦略

1-1.時間配分について

まずは、「表計算」の基本的な戦略についてお話したいと思います。

基本情報技術者の午後試験は150分ありますが、午前試験と比較して時間が足りないということに陥りがちです。

そこで、まず時間配分が重要になってきます。各問題にかける時間の目安は以下の通りです。

問番号分野解答数配点時間(目安)
問1情報セキュリティ1問(必須)20点20分
問2~問4SW、HW、DB、NW、SW設計1問or2問(選択)各15点各20分
問5PM、SM、システム戦略、経営戦略、企業と法務0問or1問(選択)各15点各20分
問6アルゴリズム1問(必須)25点45分
問7~問11ソフトウェア開発(C,Java,Python,アセンブラ、表計算)1問(選択)25点45分
合計5問100点150分

ポイントは前半の3問は1時間で終わらせ、後半のアルゴリズムとソフトウェア開発にそれぞれ45分ずつかけることです。これらは文章を読み解く時間も重要になりますので、それだけ時間がかかるということを覚えておきましょう。

1-2.「表計算」と「Excel」の違い

「表計算」と聞くと、Microsoft Excelを想像する方が多いかと思いますが、Excelと異なる点が3点あります。

「表計算」と「Excel」が異なる点
  1. 関数に「=」が付かない
  2. 関数が漢字表現である
  3. マクロが疑似言語で書かれている

この3点の違いによって、普段Excelを使い慣れている人でも、勉強無しで挑むと思うように点が取れないということが起こります。つまり、基本情報技術者向けの対策を独自で行う必要があるということです。

1-3.重要な関数は覚えておいたほうが良い

一応、問題文には「関数」の説明がすべて載っていますが、先述した通り、午後試験は時間が足りなくなる可能性が高く、関数の説明をいちいち読んでいる時間はありません。

参考:試験本番時の「関数の説明」について

集合形式で試験が開催されていた時代は、問題冊子に関数の説明が付いていましたが、現在はPCで試験を受けるため、「関数の説明」が掲載されている場所が若干分かりづらいです。(「表計算」の問題文の中ではなく、用語の説明が別メニューとして用意されています。)また、問題文と異なるページに掲載されているため、「問題文」と「用語の説明」を行き来しながら問題を解いていたらとても時間が足りません。やはり、事前に関数を覚えておくことが、「表計算」を攻略する重要なポイントになります。

下記に掲載されている関数はあらかじめ覚えておくことをおすすめします。それによって、大きな時間短縮を狙えます。特に覚えておくべき関数にはマーカーを塗っておきますので、優先的に暗記してください。

関数書式機能Excel
論理積論理積(条件A,条件B)複数の条件がすべてtrueかを調べるAND
論理和論理和(条件A,条件B)複数の条件が1つでもtrueかを調べるOR
否定否定(条件A)条件がtrueであれば、falseを、falseであればtrueを返すNOT
ifif(論理式,式1,式2)論理式がtrueであれば、式1を実行し、falseであれば式2を実行するIF
合計合計(セル範囲)セル範囲の合計を表示するSUM
条件付合計条件付合計(検索範囲,検索条件,合計範囲)検索条件にあてはまる値を合計するSUMIF
平均平均(セル範囲)セル範囲の平均値を表示するAVERAGE
最大最大(セル範囲)セル範囲の最大値を表示するMAX
最小最小(セル範囲)セル範囲の最小値を表示するMIN
整数部整数部(算術式)小数点を切り捨てて整数にするINT
表引き表引き(セル範囲,行の位置,列の位置)指定した行番号・列番号にあるデータを表示するINDEX
照合一致照合一致(検索値,セル範囲,検索の指定)検索範囲内で指定した値で検索し、最初に見つかったセルの位置を数字で返すMATCH
照合検索照合検索(検索値,検索範囲,抽出範囲)検索範囲の1行目または1列目で特定のデータを検索し、該当する行の指定列にあるデータを取得する。LOOKUP
垂直照合垂直照合(検索値,セル範囲,表示したい値の列の位置,検索の指定)検索範囲の1行目で特定のデータを検索し、該当する行の指定列にあるデータを取得する。VLOOKUP
水平照合水平照合(検索値,セル範囲,表示したい値の行の位置,検索の指定)検索範囲の1列目で特定のデータを検索し、該当する列の指定行にあるデータを取得する。HLOOKUP
順位順位(算術式,セル範囲,順序の指定)指定した数値の順位を求める。同順位の場合、最上位の順位になる。RANK
標本標準偏差標本標準偏差(セル範囲)分析対象となるデータがすべてそろっている場合の標準偏差を求めるSTDEV
母標準偏差母標準偏差(セル範囲)分析対象となるデータが一部ある場合の標準偏差を求めるSTDEVP

1-4.マクロは読み方さえ覚えれば難しくない

「表計算」で特に苦手意識を持たれているのがマクロの問題ですが、疑似言語の読み方さえ覚えておけば決して難しくはありません。以下に記述形式をまとめましたので、こちらに記載されているものは覚えていただければと思います。

1-5.過去問を繰り返し行う

午後試験全般に言えますが、対策として最もおすすめな方法は午後試験の過去問をやることです。午後試験は「アルゴリズム」や「表計算」といったプログラミングに関する科目で50点を占めますので、暗記はあまり重要ではありません。

「日本語の問題文を読む」→「表計算やマクロにどう落とし込まれているかを理解する」といった仕組みの理解が重要ですので、くれぐれも暗記に頼った勉強法はやめましょう。

2.覚えておきたい重要な関数

ここからは関数で注意すべきポイントについてまとめたいと思います。基本的なExcel知識がある人向けになっています。

2-1.整数部(INT)

書式:整数部(値もしくは式)
処理:値を超えない一番大きな整数を返す
例:「整数部(3.9)」 → 「3」

負の値の整数部は要注意

整数部(3.9)とした場合、3になりますが、整数部(-3.9)になると、-4になります。整数部は算術値の値を超えない一番大きな整数を返す関数のため、-3だと算術値よりも大きくなってしまうためです。

2-2.剰余(MOD)

書式:剰余(被除数,除数)
処理:被除数÷除数の「余り」を返す
例:「剰余(10,3) → 「1」

剰余関数の負の値は要注意

剰余関数は、被除数を除数で割ったときの余りを返す関数ですが、正の値、負の値は要注意です。

(1)剰余(10,4)の値・・・2

(2)剰余(10,-4)の値・・・-2

(3)剰余(-10,4)の値・・・2

(4)剰余(-10,-4)の値・・・-2

2-3.切上げ・切捨て・四捨五入(ROUNDUP・ROUNDDOWN・ROUND)

書式:切上げ・切捨て・四捨五入(算術式,桁位置)
処理:指定した桁位置で切上げ・切捨て・四捨五入を行う
例:「切上げ(12.34,1)」 → 「12.4」
例:「切捨て(12.34,1)」 → 「12.3」
例:「四捨五入(12.34,1)」 → 「12.3」

正の値のときの桁位置

桁位置の値が算術後の桁数になります。

例えば、以下のようになります。

切上げ(12.34,0)の値・・・12

切上げ(12.34,1)の値・・・12.4

切上げ(12.34,-1)の値・・・20

負の値のときの桁位置

切上げ(-12.34,0)の値・・・-13

切上げ(-12.34,1)・・・-12.4

切上げ(-12.34,-1)・・・-20

2-4.否定(NOT)

書式:否定(論理式)
処理:論理式の結果がtrueであれば、falseを返す、falseであればtrueを返す
例:「否定(論理積(A,B))」 → AかつBの場合「false」、それ以外の場合「true」
例:「否定(論理和(A,B))」 → AかBに当てはまる場合「false」、どちらも当てはまらない場合「true」

否定関数は、引数に指定さする条件が1つで、指定された条件の結果とは逆の結果を返します。

例えば、以下の4人がいたとします。

① サッカー部の1年生

② サッカー部の2年生

③ バスケ部の1年生

④ バスケ部の2年生

このときに、「否定(論理積(サッカー部,1年生))」としたときの結果は、①がfalseで、②③④がtrueになります。

一方、「否定(論理和(サッカー部,1年生))」とした場合は、①②③がfalseで、④がtrueになります。

単純に、trueとfalseの結果を反転させているだけと覚えておきましょう。

2-5.個数(COUNT)

書式:個数(セル範囲)
処理:空白セルを除くセルの数を返す
例:「個数(A1:B2)」 → 「4」

2-6.条件付個数(COUNTIF)

書式:条件付個数(セル範囲,検索条件)
処理:検索条件を満たすセルの数を返す
例:「条件付個数(A1:B2,≧10)」 → 「10以上の値のセルの数を返す」

2-7.垂直照合(VLOOKUP)

書式:垂直照合(検索値,検索範囲,返却値の列の位置,検索の指定)
処理:検索された値が格納されている値から見て、右方向にあるセルの値を返す

検索の指定については必ず覚えてください。

検索の指定が「0」の場合は、完全一致したものを表示します

検索の指定が「1」の場合は、検索値以下で最大の値を表示します

2-8.照合検索(LOOKUP)

書式:照合検索(検索値,検索範囲,抽出範囲)
処理:検索値と同じ行や列に格納されている値を返す

垂直照合は検索値の右側の値しか表示できませんが、照合検索では左側の検索も可能です。また、垂直検索も水平検索も可能です。

垂直照合や水平照合との違いは、検索の指定ができない点です。そのため、照合検索では常に一致する値を検索します

上記の書式を説明すると、①検索値に一致するものを②検索範囲から探し出し、③抽出範囲の同じ行にある項目を表示するという意味になります。

2-9.表引き(INDEX)

書式:表引き(セル範囲,行の位置,列の位置)
処理:セル範囲の左上を基準とし、指定された行と列の位置にある値を返す

セル範囲に指定された左上端のセルを1行1列目とし、そこから下に行を下げていき、右に列を動かしていくイメージです。

例えば、上記の図のC7の式を入れたときに、返される値は「1440」です。

C3を基準として、下に2行、右に3列移動した箇所(E4)が返されるためです。

2-10.照合一致(MATCH)

書式:照合一致(検索値,セル範囲,検索の指定)
処理:検索結果の位置情報を返す
※行もしくは列のどちらか1つ

照合一致関数は、検索値に一致する位置を返す関数です。行でも列でも検索できることが特徴です。

そのため、セル範囲は1行もしくは1列で指定しなければいけません

なお、検索の指定は以下の通りです。

0:検索値と一致する値を探す

1:検索値以下で最大の値を探す

-1:検索値以上で最小の値を探す

なお、表引き(INDEX)と照合一致(MATCH)については、組み合わせでよく出てきますので、覚えておきましょう。

上記の図のように、表引き(INDEX)の行や列の指定の際に、照合一致(MATCH)が使われることがよくあります。

試験だと、上記の関数が一緒に出てくるので、複雑に見えますが、一つずつひも解いていけば大丈夫です。

2-11.条件付合計(SUMIF)

書式:条件付合計(検索のセル範囲,検索条件,合計のセル範囲)
処理:検索条件を満たしている数値を合計する

2-12.順位(RANK)

書式:順位(算術式,セル範囲,順序の指定)
処理:セル範囲内の順位を返す

なお、順位関数の順序の指定は以下の通りです。

 0:値が小さいほうが良い順位になる(タイムなど)

 1:値が大きいほうが良い順位になる(点数、勝利数など)

2-14.平方根(SQRT)

書式:平方根(値または算術式)
処理:2乗すると引数の値になる数を返す
例:「平方根(9)」 → 「3」

2-15.母標準偏差(STDEVP)

書式:母標準偏差(セル範囲)
処理:データのばらつき具合を調べる ※ばらつきが大きいほど標準偏差の値も大きくなる

母標準偏差は、分析対象のデータがすべてある場合、または収集可能な場合に使用する。

2-16.標本標準偏差(STDEVS)

書式:標本標準偏差(セル範囲)
処理:データのばらつき具合を調べる ※ばらつきが大きいほど標準偏差の値も大きくなる

標本標準偏差関数は、分析対象のデータの一部がある場合に使用する。

3.関数の記述で注意するべきポイント

3-1.引数が文字列の場合は「’」で囲む

引数が文字列の場合は、その文字列をシングルクォーテーション「’」で囲みます。

問題の選択肢に「’」で囲まれているものと、囲まれていないものがある場合がありますので、文字列かどうかを確認するようにしましょう。

3-2.相対参照と絶対参照

表計算で絶対に覚えておかなければいけないのは、相対参照と絶対参照の違いです。

相対参照

Excelで一つの式をコピペしていくと、参照するデータもそれと同じ分だけズレていくと思います。これを相対参照といいます。

例えば、「=SUM(A1,B1)」を下にコピペしていくと、「=SUM(A2,B2)」「=SUM(A3,B3)」・・・と参照する値が同じ分だけ動いていきます。

絶対参照

一方、コピペしたときに参照するデータを動かしたくないときは、絶対参照を使います。行と列で動かしたくないほうの前に「$」を付ければ、コピペしても動きません。以下のように指定します。

列を固定:$A1

行を固定:A$1

列と行を固定:$A$1

4.マクロを攻略するコツ

上述した通り、マクロは苦手意識を持たれる方が多いと思いますが、一つ一つ分解していくと大して難しくありません。まずは下記の図(再掲)にある通り、読み方を覚えることが重要です。

4-1.変数の移り替わりを一つ一つ可視化していく

マクロは繰り返しの処理が多く、頭で考えていると混乱していきます。変数の箱を用意し、それぞれの変数にどのような値が入っているかを一つずつ可視化することで、マクロの流れをつかむことができます。

最初は時間がかかりますが、過去問を繰り返し解くことで、変数の流れを即座につかめるようにすることが重要です。

4-2.相対表現を必ず覚えておく

相対(基準セル,行の位置,列の位置)

マクロでは相対表現が頻出しますので、意味を覚えておく必要があります。

例えば、相対(C3,1,2)であれば、E4を示します。

4-3.同一の型の変数を複数作る場合は配列が使われる

〇数値:array[5]

上記の宣言であれば、変数名がarrayで、変数の数が5になります。

変数のあとに[ ]で囲まれた数字があった場合、それは配列を表していますので、覚えておきましょう。

4-4.日本語を読み解く力が重要

アルゴリズムの問題にも言えますが、「表計算」の問題を解くにあたって、日本語の読解力がとても重要だと思います。長文の日本語の問題文から、どのような処理をしているのかが頭で整理出来ないと、マクロに落とし込むことも出来ません。まずは、問題文だけ読んでみて、理解出来るかどうかがポイントになりますので、過去問をやる際にはそのようなトレーニングをすることもおすすめです。

5.おすすめの参考書

最後におすすめの参考書を一つだけ紹介します。

基本情報技術者の「表計算」の対策はこれ1冊で十分ですので、是非購入することをおすすめします。

いくつか比較しましたが、こちらの解説が一番分かりやすく、情報量も必要十分だと思います。私もこの1冊だけしか対策していませんが、90%近くの点数を獲得できました。

また、表計算以外の対策本としては以下がおすすめです。

ちなみに、ITのことがほとんど分からないという人は、キタミ式のほうが丁寧に解説されているので、そちらのほうが良いかもしれません。

↓↓この記事がお役に立ったならば、応援クリックを押していただけると大変嬉しいです↓↓

ブログランキング・にほんブログ村へ