2013年4月12日金曜日

Excelの使い方!!!

よくこんな例題等がありますよね?










で、平均点は、AVARAGEを使いましょう!!!
なんて、言う例題がそこらへんにたくさん転がってます。

それで事足りるならいいと思うんですが、わいわいは良いとは思ってません。

例えば、
学年上がったらまたシート作らないとダメかなぁとか、

学習だったらまだ良いのですが、

・過去のデータと比べてみたい

とかあったら、このくらいのデータ量ならまだしも、
学校全体でどうなるのか
はたまた市町村としてはどうなのか?

なんてのもあったりしたら集計も容易ではないですよね><


Excelをデータとして使うからよくないのです!

ExcelはあくまでViewになるべきと私は思っています。

つまり、

上の様なデータはちょいちょいって、DBに突っ込んであげる!!!

例えば上の例なら

生徒マスター
ID,名前,生年月日

教科マスター
ID,教科名

点数データテーブル
ID,生徒ID,教科ID,学年,点数

なんてテーブルを作ってあげれば、そこにデータを突っ込むだけ!!!

後は、
セルに該当するSQLを書いて上げる!!!
(正確にはSQLを引数とするVBA関数コールを書く)

(例)こんな感じのVBAをあらかじめ書いておきます!
http://q.hatena.ne.jp/1154589462

例えば、
SELECT * FROM 点数データテーブル WHERE 学年=1

なんてすれば、過去の生徒のデータも一緒にとって来れる!!!

過去のデータと比べて見るなんて事も楽勝です!!!

平均点も

SELECT AVG(点数) WHERE 学年=2

なんてやってあげれば出来るし!!!
後のデータ加工はよしなにーー!!!
って感じです!

Excelはあくまでデータを表示するツール、
データはデータベースと分けておいた方が、後からデータを
参照したいなんて時や、 集計なんてのもとても楽になるといつも思ってます!

私はいつも、こうやってExcelを使ってます!!!


みなさんのExcelの使い方はどんなのですか?


上の例えは、個人情報的にどうなのか?
なんて言うのはありますが、そこは突っ込みどころではないので
ご勘弁を(笑)