Accessの学習

 AccessはWordやExcelと比べて確かにとっつきにくい部分があり、学習の手ごたえが得られるまでにはどうしても時間がかかります。しかしわかるほどに奥が深く、「こうしてみるとどうなるだろう」と自ら考えられるようになるとやめられなくなる面白さがありますので、最初は苦しいかもしれませんが少しずつでも継続的な学習を続けていただきたいと思います。余談も多くなりますが参考まで。

学習の進め方

 Accessに対してどのように接するのかによって求められるスキルは異なり、すべての人がAccessの機能を広く深く理解する必要があるわけではありませんので、当たり前ですが学ぶべきことは人それぞれです。単にデータの入力を任される立場であるとすればテーブルやフォームの操作がそれなりにできればよいのですし、別の業務システムからデータをダウンロードして集計等の処理を行いたいのであればデータのインポート・エクスポートやクエリの操作がそれなりにできれば問題ないと考えられます。こうした方々はフォームやクエリの操作を集中的に学習すればよいのであり、特に迷うこともないものと思います。
 しかし、Accessで業務の全体を処理できるようなシステムを構築したい方は、もっと息の長い学習を続ける必要があります。Excelの場合ですと(やや極端な言い方ですが)罫線やセルの結合といった書式設定を覚えて、あとは関数をたくさん覚えればそれなりに使えるようになりますが、Accessはテーブル、クエリ、フォーム、レポートと、全く性質の異なるオブジェクトが連携してシステムを構成するようになっていますので、どれか不得意なものがあるとそこがネックになってしまいます。つまり、クエリだけ得意とかレポートだけ得意、というだけでは、業務に十分活用できるようなシステムを構築できない恐れがあるということです。よって、まずは各オブジェクトについて最低限の知識を身につけて簡単なシステムを構築できるようにし、その後も各オブジェクトについてバランスよく学習を続けて全体を少しずつレベルアップしていくべきといえます。少なくとも数ヶ月、あるいは年単位の期間を要するかもしれませんが、日常の業務、あるいはCDコレクションのような趣味のデータをデータベースにしてみる作業を繰り返し、一つ一つノウハウを身に着けていくのが地味ではありますが確実な方法です。
 かといって、やたらと細かい設定や操作方法を覚えようとするのもあまり効率的とはいえません。テーブルの設定でいえば主キーとデータ型の設定方法のほか、入力規則と定型入力と書式はどう違うのかといった程度の機能の概要、そして並べ替えやフィルタ操作を理解しておけばおよそ十分であって、定型入力設定時の「&」と「C」がどう違うのかといった詳細は必要なときに参照できればそれでよいのです。細かい暗記よりも各種オブジェクトの概要と関係性の理解に努める方が結局は早い上達につながるものと思います。
 ただ、さまざまな設定や操作を覚えていくだけでは、より本質的な疑問、つまりAccessがデータベースソフトでありExcelが表計算ソフトであることの質的な違いは何なのか、Excelに立派なフォームとレポートがついていればAccessは要らないのではないか、といった疑問を解決することができないものと思います。Accessの操作を覚えるだけではこうした疑問は解決しませんし、データベースという世界の周辺を堂々巡りしているようなもどかしさが残るのではないかと思います。
 こうした疑問に心当たりのある方に対しては、データの正規化(それぞれの列に記録される値の関係に基づきテーブルを適宜分割し、列を配置していく手法)、そしてリレーションシップ(複数のテーブル間のデータの整合性を保つための機能)について重点的に学習することをお勧めします。Accessというソフトはこれらの重要性をあえて強調していませんし、特に正規化についてはAccessの機能として用意されているものではない(正規化ウイザードというのはありますが)こともあって多くの解説書でも詳しい内容は省略されていますので、どちらも全然知らないという人も少なくありません。しかし、正規化されたテーブルはデータを効率的に記録し、安全に扱うことができます。また、フォームやレポート等のオブジェクトはテーブルがきちんと正規化されていてこそ十分な性能を発揮するようにできています。結果的に正規化を考慮して作成されたシステムとろくに考慮されていないシステムの出来には天と地ほどの差が生じます。詳しくはそれぞれの節で説明しますが、正規化、リレーションシップという用語についてはぜひ覚えておいてもらいたいと思います。
 なお、VBAに対してあまり大きな期待をするのは考えものです。VBA=難しそう=上級者、というイメージを持たれる方もいるかもしれませんし、確かにVBAの応用範囲は広いのですが、Accessを利用する以上はあくまでクエリ、フォームといった基本的なオブジェクトの機能を最大限活用することをまず考えるべきであり、VBAはフォーム操作などに関して補助的に用いる、というのが本来のあり方です。むしろVBAに処理の多くを担わせコードが肥大化しているというのは典型的な失敗例の一つです。基本的なオブジェクトの活用がうまくできていないことによるしわ寄せがVBAに現れている、ともいえます。

データベース学習の発展

 上でも述べたようにAccessへの接し方も人それぞれですし、より進んだ応用を見据えて学習している人ばかりではないと思いますが、Accessを通じてデータベースという分野そのものに関心を持たれたのであれば、自ずと学習の幅は広がってきます。
 一つの方向として、大きなデータを多くの人が扱うための大規模なデータベースの運用に関心を持たれるかもしれません。Accessは個人利用を想定してデータベースの便利な部分を簡単に利用できるように開発されたソフトですが、一方で大規模なデータの運用や障害発生時の復旧に関する機能はバッサリと切り捨てられています。こうした機能については本サイトでは紹介できませんが、データベースの機能として重要なのは確かです。これらについてはとにかく利用できる環境をどうするかが問題ですが、Oracleなどの商用データベースでも商用利用でない限り無料であるいは安価で利用できるライセンスがあったりしますのでこれを利用するのが一つの方法です。また、MySQLのようなオープンソースのデータベースの利用も考えられます。いずれAccessと比べてもはるかに利用者の少ない世界ですので、いかに情報を入手するかについて目処をつける必要があります。
 もう一つの方向としては、業務の内容に応じた適切なデータベースの設計について関心をもたれるかもしれません。当サイトでもテーブルの正規化について大きく扱っていますが、これは対象とする業務の理解、難しく言えば業務分析と深く結びついていることが理解できるものと思います。かといって財産管理の業務ならこういうテーブル、とか、マンガ作品のデータベースならこういうテーブル、というような明確な決まりがあるわけではなく、それぞれの現場におけるデータの詳細な意味や処理の流れなどを踏まえて判断しなければなりません。とても奥の深い分野で、専門書も多く出ているのでそれを勉強するのもいいですが、下記で紹介する情報処理技術者試験の問題や対策書も参考になるものと思います。また、どのようなデータベースソフトを利用する場合であっても重要なテーマですので、本サイトでもなるべく触れていきたいところです。

資格試験の利用

 これほどインターネットが普及しているご時勢ですので、わからないことがあれば検索すればたいていの情報は得られますが、困ったときに調べるというやり方ではTipsにばかり目が行きがちで、Accessやデータベースの体系的な学習を進めるのはなかなか容易ではありません。
 そこで、資格試験を利用することも一考すべきかと思われます。データベース製品としてAccessはメジャーな方ですがExcelと比べると利用者は格段に少ないですし、周囲に同じような仲間がいないとなかなかモチベーションも上がらないこともあるだろうと思われます。しかし試験となれば自ずと期限を定めて学習プランを立てる必要がでてきますし、試験対策書は要点を具体的にまとめていることが多いので効率的にも悪くないものと思います。そして何といっても合格により実力を客観的に認めてもらえるというのは学習の励みになるものと思います。
 試験として代表的なものに、本家マイクロソフトの認定により実施されているMOS(マイクロソフト オフィス スペシャリスト)があります。近年の試験は課題製作形式の完全な実技試験だそうですので、具体的な操作方法を中心とした実践的な知識が問われる内容になっているようです。
 また、Accessに限らずデータベース技術を学ぼうとする方、さらにIT分野の知識を広げたいという方には、IPA(情報処理推進機構)が実施する情報処理技術者試験試験区分一覧)も挙げられます。法律に基づき開催されている試験であり、試験内容はAccessの操作そのものとは全く関係がないものの、初歩的な試験であるITパスポート試験にも正規化やデータの抽出に関する基礎的な問題が出るほか、基本情報技術者試験、応用情報技術者試験などでデータベースの専門的知識を問う問題が現れます。ただし、データベースだけでなくネットワークやセキュリティなどの知識が必要であり、データベースに関する知識だけで合格できるものではありません。一方で、データベーススペシャリスト試験という試験もあります。これは設問が高度で受験者層のレベルも高いため相当の難関ですが、ほぼ全ての問題がデータベース関連ですので、とにかくデータベースという分野に強い関心と自信がある方にお勧めします。記述式の午後?・?問題では設問中の業務の詳細を把握しデータベース設計に正確に反映させていく能力が問われますが、初めて見る人にとっては、いわゆる国家試験においてこういう分野があり評価の対象となっているということに驚かれるかもしれません。