step05 表計算ソフト(MS Excel)入門

表計算ソフトは、その名の通りを作成するとともに、集計やグラフ化などを行うためのアプリである。つぎの3つの主要機能を持つ。この入門では1と2を扱う。

  1. 表作成・表計算機能
  2. グラフ作成機能
  3. 統計・データベース機能

表作成・表計算機能

インテリジェント集計用紙という基本アイデア

表作成・表計算機能は、表計算ソフトの最も基本的な機能である。
表作成とは、それまで紙の集計用紙で作成した一覧表を画面上で作ることである。つまり表専用のワープロと思えばよい。だが、それだけならワープロの表作成機能でもこと足りるだろう。表計算ソフトの真価は、作成した表の上で自動的に集計などの計算をさせることである。言い換えれば自動的に特定の計算をしてくれる表を作成することである。
世界初の表計算ソフトは、Personal Software社が1979年に発売したVisiCalcである。この製品が打ち出したインテリジェントな電子集計用紙という表計算ソフトの基本的コンセプトは、現在にも変わらず引き継がれている。
表計算ソフトでは、文書に集計用紙のメタファを利用する。ワープロが白紙のメタファを利用するのと同様である。集計用紙は、現在でも文房具屋で見かけるが、表計算ソフトの普及ですっかり過去のモノになってしまった、横長の升目を印刷した用紙である。この横長の升目をセルという。集計用紙を使って表を作成するには、セルに文字列や数字を埋め、電卓やソロバンの計算結果をやはりセルに書き込み、セル間に定規で罫線を引いて仕上げる。
この集計用紙をインテリジェント化する、つまり、どのような計算をするかを設定し、自動化するにはどうすればよいのだろう。表計算ソフトでは、計算結果が書き込まれるセルに、計算式そのものを属性として設定することで、この機能を実現した。この着想はあまりに正鵠を射ており、代案を思いつけない。
具体的な使用方法を説明する前に、セルやセル範囲など、表文書の構造や各部の名前を解説する。各自、表計算ソフトExcelを開いてみよう。

表文書の構造

Excel文書は、以下の階層からなっている。上位の階層から順に書く。
ブック
1つの文書ファイルに対応する。ワークシートを重ねたもの。
ワークシート
1つの表に対応する。名前はSheet1、 Sheet2、 Sheet3……。
ワークシート上の、横方向の細長い領域。名前は1行、2行、3行……。
ワークシート上の、縦方向の細長い領域。名前はA列、B列、C列……。
セル
ワークシートの最小単位である升目。列と行の交差した領域である。名前はA1セル、B2セル、C3セルなど。
セル範囲
複数のセルからなる、ワークシート上の矩形領域。名前は、対角上の2隅のセルをでつないで、A1:C3などと呼ぶ。
図5-1に、行、列、セル、セル範囲の関係を示す。

図5-1: セルとセル範囲

ところで、ワークシートという電子集計用紙はどのくらい広いのだろうか。スクロールしてみれば分かるが、実は、ワークシートには左上の隅(A1セル)しかなく、右にも下にも、事実上無限に広いのである。これを半無限の広さという。もちろん実際に作成する表は、印刷用紙や画面との関係で大きさとセルの範囲が決まる。

数式

さて、表計算機能の核心である、セルへの設定はこのように行う。たとえばC2セルに、A2セルとB2セルの合計を入れるには、C2セルに=A2+B2という式を設定すればよい。また、ある「セル範囲」の数字をすべて合計するのなら、関数を用いて=SUM(D1:D13)のように書く。各セルには値が設定できるので、セルの名前はちょうど変数名と同じ働きをするのだ。数式に左辺がないのは、つねに式を設定するセル名と同じになるので、省略されているのである。
ワークシート上のセルに、こうした設定をしてゆくことで、表文書にワークシート上で行われる計算をプログラミングすると考えることができる。ビジネスでは、同じやり方の集計を異なるデータに対して繰り返して行うことが多いので、一度作られた表文書はそのまま使い回すことができ、紙で作成するより大幅な効率化が図れる。
設定された数式は、セルの属性の1つだが、セルにはこの他にも、書式という、2種類の属性を設定できる(図5-2に示す)。

図5-2: セルに設定できる3種類の属性

3種類の属性の内、値と書式、数式と書式は同時に設定できるが、値と数式は同時には設定できない。値の入ったセルに数式を設定すると値は上書きされて消えるし、逆もそうである。これを排他的な性質という。ただし、数式を設定したセル名を他のセルの数式中で使うことはでき、その場合は数式の計算結果が値として使われる。

とは、計算を必要とせず、セルにそのまま表示される数値や文字列のことである。たとえば以下の種類があるが、これはデータベース管理システムにおけるような本格的なデータ型の概念というより、あくまでセルの表示形式と捉えるべきである。

表計算を行うワークシートには、必ず、集計前の生のデータが記入されたセルがあり、それ所与の値という。それに対して、所与の値を引数として計算した結果を表示するセルには、値でなく式を設定する。

書式

書式は、表文書の体裁を決めるあらゆる設定を含んでおり、その点ではワープロ文書の書式と変わらない。たとえば、フォントの種類やサイズ、下線や太字などの文字飾り、セルの背景色などである。これらの書式はセルに対して設定される。また、行・列・ワークシートなど、より上位の構造に設定される書式もある。たとえばセルの幅は、そのセルを含む列の属性である。主な書式の種類を以下に示す。

セル書式
表示形式、配置、フォント、罫線パターン、保護、条件付き書式など。
行書式
行の高さ、表示/非表示など。
列書式
列の幅、表示/非表示など。
ワークシート書式
背景など。
前述のように、書式は、値、式のどちらとも同時に設定できる。
表文書の書式は、ワークシート上に固定されたセル(行、列)に対して設定されるので、ワープロ文書の書式のように、文字につく書式場所につく書式の区別はない。その分、ワープロよりも簡単である。

表文書の作成手順

表文書は、以下の手順で作成する。

  1. 所与の値を入力する。
  2. を設定し、計算手順をプログラミングする。
  3. セルやワークシートの書式を整える。
この順序を守らないと、どこかでミスをしたとき、作業に余計な手戻りが生じ、作業効率が落ちてしまう。
また、上の1、3を表作成、2を表計算と考えることもできる。
Excelは表のワープロでもあるので、作業中はセルからセルへの移動と文字入力が繰り返される。そこで、セル間の移動に使われる図5-3のショートカットキーを利用すると効率的である。
ここからは、いくつかの演習課題を通して、表作成・表計算機能を学ぼう。

図5-3: セル間移動のためのショートカットキー

演習1:屋上庭園

山口さんには庭がない。しかたなく屋上を庭として使うことにした。花壇を作って土を入れたり、タイルを引いてテーブルを並べて、悦に入っていたところ、ある日、家を見に来た住宅メーカーのサービスマンに、「ここの屋上にあまり重いものを乗せてはいけません。1トンを超えたら屋根が抜けますよ」と指摘されてしまった。あわてた山口さんは、屋上に乗っているもの全部の重さを知るべく、一覧表作成を思い立った。


演習1-1:表作成

手始めに図5-4のような表を作ろう。山口家の屋上に乗っているものの重さと個数をリストアップしたものだ。これらはすべて所与の値である。 細かいことだが、作成する表の左上隅は図と合わせてほしい。後で式などを設定する際に、セルの名前で説明するので、位置と名前がずれないほうがいい。
重量欄の小数点以下を表示するには、セルの表示形式を標準から数値に変更し、小数点以下の桁数を設定する。

図5-4: 所与の値を入力した段階のワークシート
ここまでは、表のワープロを使ってちょっと見栄えのよい(?)一覧表を作っただけで、まだ表計算はしていない。


演習1-2:式の設定、表計算

山口さんは、屋上に乗っているものの総重量を知るために、この一覧表を作ったのだった。表計算ソフトは、単に表を作成するだけでなく、この表の上での計算を自動的に行うことができる。 それには、図5-4の表を元に、どの値を用いてどんな集計をするのかを、式の設定を通じてExcelに教えてやらねばならない。これは一種のプログラミングである。
以下の手順に従って式を設定しよう。この演習のゴールは、図5-5の表である。

図5-5: 総重量の合計を求める式を設定した段階のワークシート
最初に、材料それぞれについて、総重量を計算しなくてはならない。そこで、空いているD列に総重量を表示することにしよう。総重量は各材料の重量×個数で求められる。たとえば、D2セルに、角ブロックの総重量を表す式を設定する。これは以下の手順で行う。
  1. D2セルをクリックして、数式バーをクリックする。
  2. 数式バーに=B2*C2(半角)を入力して、OKをクリックする。
  3. D2セルに、角ブロックの総重量216が表示される。
  4. 椅子の行のD9セルまで、順に式を設定していく。セルに1つずつ数式を設定するのではなく、編集/フィル/下方向へコピー機能を使う。
下方向にコピー(Ctrl-D)右方向にコピー(Ctrl-R)は、連続したセルに式や書式を設定していく時に頻繁に使う操作である。だが、ここで注意しなくてはならないのは、式を別のセルにコピーするということの正確な意味だ。
あるセルに設定された式には、別のセルに設定された値が引数として参照されており、設定したセルには計算結果が表示される。つまり、まったく同じ数式を下や右のセルにコピーすると、同じ計算結果の数字が並ぶはずだ。だが、それでは意味が無い。
そこで、式がコピーされる際には、引数のセルも、式が設定されたセルとの相対的な位置関係を保つようにシフトされるのである(図5-6を参照)。これを相対位置指定という。
図5-6: 式のコピーにおける引数セルの変化(相対位置指定)
たとえば、各材料の総重量は、それぞれ2つ左の「重量」と1つ左の「個数」の積なので、D2セルに設定されている数式=B2*C2において、引数セルの名前は、絶対的なセルの位置を表しているのではなく、D2セルに対する相対的な位置関係(「2つ左」とか「1つ左」)を表しているのである。よって、式を別のセルにコピーする際に保存すべきなのは、この相対的な位置関係なのである。
大半の場合は、この相対位置指定で求める結果が得られるので、これは式のコピーにおけるデフォルト設定である。だが、後の演習3:ゴルフコンペのように、絶対的な引数セルの位置を保存しなければならない場合もある。この時には絶対位置指定を指定しなければならない。具体的な方法は演習3で説明する。
各材料毎の総重量が求まったので、最後にそれらを合計して、屋上に乗っているものすべての重量を算出しよう。これも総重量と同じように、8種類の数を足し算する数式でも計算はできるのだが、あまりよい方法とはいえない※1

1 新しい材料が追加された場合や、材料が200種類もあるような場合を考えてみれば分かるだろう。

やりたいことは、この8つの数字を足すというより、表のここからここまで(セル範囲)を全部足すということなのである。これには関数sumを用いる。関数といっても高校数学のそれのような、難しいものではない。四則演算の数式では表せないか、複雑になってしまう計算について、あらかじめ用意されている計算パッケージと捉えればよい。
C10セルに、数式=SUM(D2:D9)を設定すれば、材料の重量の総合計1023.0(kg)が表示されるはずだ。ついでに個数の合計も求めよう。このように、セル範囲を対象とした計算は、関数を使わなければ表現できないので、表計算とExcel関数とは切っても切れない。以後の演習でも、いくつかの基本的な関数を学んでいく。
これで集計表は完成した。図5-5で、白いセルが所与の値、黄色いセルが数式の計算結果である。このように、表計算を行う表には、この2種類のセルが混在している。ここでは分かりやすさのためにセルの背景色(書式の1種)で区別したが、一般には見ただけでは区別できない。そのセルがカレントセルのときに数式バーで確認するしかない※2

2 セルをダブルクリックすると数式入力モードに切り替わり、式が表示される。このモードで他のセルをみだりにクリックすると式が壊れるので注意。

で、集計結果を見ると、屋上に乗っているモノは合計1トンを超えている。つまり、山口家の屋根はいつ抜けてもおかしくない! 山口さんはどうすべきだろうか。この表で、各材料の個数を加減して、合計が限界内に収まるような計画を立てればよいのである。このように、一度作成した表には、重量の集計手順がプログラムされているのだから、手順が同じなら、データは異なっていても再利用できる。これが紙の集計表にはない、表計算ソフトの最大のメリットなのである。

演習1-3:金額の計算

山口さんは、せっかく各材料を数えて一覧表をつくったのだから、ついでに庭造りにかけた費用も一緒に計算させようと企てた。これには、各材料の単価や金額の列を追加して、重量の時と同様に数式を設定すればよいはずだ。
図5-5の表を改良して、図5-7のような表をつくること。さきほど解説した表計算機能以外にも、太字罫線などのセル書式が設定されている※3。前述のように、書式を整える作業は、表計算のロジックが動作することを確認してから行うようにする。

3 Excelの罫線機能は、私がMS Officeの3大わからんUIと呼んでいるものの1つである。本来、セルとセルの間に引かれている罫線を、セル書式の機能に整理したことが、わからなさの原因なのだが、プレビュー枠の表示と、選択したセル範囲の対応がイメージできれば、とまどわずに罫線を引けるだろう。

図5-7: 金額の計算のために拡張したワークシート

演習2:テスト成績表

基本的な式の設定方法を理解しただろうから、演習2と3では、さまざまな関数の使い方を学ぼう。Excel関数は数百種類もあり、とうてい全部覚え切れないし、その必要もない。この講座で挙げた10種類ほどが定番で、あとは各自が実際の勉強や仕事で必要になったものから追加で習得してゆけばよいのだ。
図5-8のテスト成績表を作成せよ。これは8人の生徒による、5教科のテストの結果をまとめたものである※4。 演習1と同様、白いセルは所与の値、黄色のセルは数式の計算結果である。ヒントとして、使用する関数を挙げておこう。

4 演習問題では、このように集計表が出発点だが、実際の学校業務では、40枚のテストという生データから出発する。そこから集計表までの作業を支援してくれる統計・データベース機能は、『山之口洋のはじめてのICT【応用編】』で、表計算ソフト(MS Excel)応用として扱う。

図5-8: 8人×5教科分のテスト成績表

使用する関数:

SUM
合計
AVERAGE
平均
MAX
最大値
MIN
最小値
PHONETIC
漢字の読み
PHONETIC関数による漢字の「読み」は、変換時に入力したかな文字列であり、100%正しい読みが表示されない。正しくない場合は訂正すること。こうした半自動化作業は、ICTを活用する作業ではよくあることである。

演習3:ゴルフコンペ

さらに別の関数や、セルの絶対位置指定について学ぶ。

演習3-1:成績表の作成

図5-9のようなゴルフコンペ成績表を作成せよ。5人の選手による4回のゴルフコンペの成績をまとめたものである。演習2のテスト成績表とほとんど同じように思えるが、2つ違いがある。

演習1、2と同様、白いセルは所与の値、黄色のセルは数式の計算結果である。

図5-9: 5人×4回分のゴルフコンペ成績表

使用する関数:

SUM
合計
AVERAGE
平均
COUNT
値が入力されているセルの数
RANK
数値の順位

演習3-2:引数の絶対位置指定

いままでと同じやり方で順位の式を設定しても、正しい結果が得られないはずである。それはなぜか。数式中の引数に絶対番地指定を用いて修正すること。
図5-6に示したように、デフォルトの相対位置指定では、式を別のセルにコピーすると、式中の引数も変化する。つまり、式を設定したセルと引数セルとの相対的な位置関係が保存されるのである。ほとんどの場合には、これが求める結果につながるが、順位を求めるRANK関数には、変化してはいけない引数がある。
このような場合は、絶対位置指定を指定しなければならない。これには$の文字を、列記号や表番号の前につければよい※5

5 わざわざ記号を追加するのは、相対位置指定がデフォルトだからである。なぜ$なのかは不明だが、おそらくガチャリと鍵をかけるイメージだろう。

つまり、相対位置指定で、

となるセルやセル範囲は、絶対位置指定では、 のようになるわけだ。2通りの書き方があるのは、列方向と行方向に別々の鍵をかけられるからである。この演習課題の場合は、列方向には式をコピーしないので、行方向の鍵だけで済む。

グラフ作成機能

Excelの3大機能の2つめが、このグラフ作成機能である。 時間を大切にするビジネス分野などでは、細かい数字そのものより、それらの傾向や動向を一目でわかるように示すことが重要な場合が多いので、表よりもグラフが使われる。そのために、作成した表から自動的にグラフを作成してくれるグラフ作成機能がある。つまり作業工程としては、表作成・表計算機能の後にくる機能だ。
操作自体の習得も大切だが、このデータはどんな種類のグラフで表現するかとかどのような体裁にしたらプレゼンテーションが効果的になるかといった観点の方がより重要である。なぜなら、グラフはプレゼンのツールであり、他人に説明しないのなら不要だからだ。

演習4:グラフで表現する

演習1~3で作成した表は、どんなグラフで表したらよいだろうか? 各自考えて、おなじワークシート上にグラフを作成せよ。
グラフ作成の手順を図5-10に示す。簡単だが、表中で、グラフ化に必要な部分は、1カ所にまとまっていないことが多く、間の不要な部分を除いて指定しなければならない。そのため、Ctrlキーで複数のセル範囲を選択する。現状(MS Excel2016)では、3カ所以上のセル範囲を複数選択しても、グラフウィザード側では対応できていないようだ。

図5-10: グラフ作成の操作手順

グラフウィザードで表示されたグラフの各要素(タイトル、軸、グラフエリア……)などを調整して仕上げる。完成したグラフは、表と同じワークシートに配置するか、独立したワークシートにもできる。主としてグラフの複雑さに応じて決めるとよい。

演習4-1:屋上庭園のグラフ化

2つのグラフを作って、同じワークシート上に配置せよ。

演習4-2:テスト成績表のグラフ化

2つのグラフを作って、同じワークシート上に配置せよ。

演習4-3:ゴルフコンペのグラフ化

2つのグラフを作って、同じワークシート上に配置せよ。