ようこそ、あなたは 人目のお客様です。( Since 1999/2/2)
本日のアクセス数: 昨日のアクセス数:

トップページ

情報室
IT資格情報
所有資格
実験室&作品展示室
談話室
遊戯室
趣味の部屋
購読雑誌紹介
プロフィール
雑記帳
気ままにブログ

業務紹介
 ・会社案内
 ・業務内容
 ・サポート料金表
 ・使用機器
 ・主な業績

メ−ル送信
備考
ページ毎アクセス集計
サイトマップ

[2001/05/23] Access格闘記

 Microsoftの一般向けデータベースとして、オフィス・プロフェッショナル版等に含まれているAccessがあります。 多分多くの皆さんと同様に(^^;、私も数年前まではハードディスク内には入っているものの、ほとんど使ったことのない(というより使いこなせない)ソフトの一つだったのですが、データベース開発でAccessを使わざるを得なくなり、それからAccessへの本格的な取り組みが始まりました。

 今ではVBAを使ったデータベースをそれなりに構築できる様にはなったかなと思っていますが、確かに感じるのはAccessは決してエンドユーザにやさしいデータベースソフトではないなあと言うことです。例えてみれば、SQL ServerのエンジンにVisual Basicのデータベース構築専用バージョンを搭載したような感じで、位置づけとしてもOfficeパッケージのExcel、Wordの隣に来るソフトなのではなく、SQL Server、Visual Basicと並べられる辺りじゃないかとも感じます。
  データベースはAccessのメニュー等の操作を覚えれば作成できるものではなく、Accessの操作のマスターはあくまで前提であって、それ以上にSQLを含むデータベースの基礎的な知識とVBAをある程度自由に操ることの出来るプログラミング力が無いと、思い通りのデータベースの構築はおぼつかないからです。私も自分で想像した以上にAccessには苦戦しました。
 と、これからAccessを勉強しようと言う方をちょっと脅かしてしまいましたが(^^; 、でも私の場合はあくまで他の人が業務で使うデータベースを作成する場合はというケースで、もしデータベースを作成した本人だけがいじるもので、操作等は自分でAccessのメニュー等から操作してもかまわない場合は、SQLとかVBAとかにあまり関わらずに済むケースもあるかも知れません。

 さて私の場合、Accessをある程度マスターするまでに大きく3つの壁がありました。(なおここで「ある程度マスターする」というレベルは、他の人が業務で使用するデータベースをVBAを駆使して作成出来るレベルを考えています)
  まず最初はAccess自身の操作を覚えるまでの壁。ここはそんなに高くありません。
  次の壁はデータベースとはなんぞやという基礎と、データベース操作に必要不可欠なSQLを覚えるまでの壁。 よりよいデータベース構成はここを押さえることが必要になります。クエリとはSQLコマンドのことだったんだと実感出来ます。
  最後の最も高い壁はVisualBasic for Applicationのプログラミングをマスターするまでの壁。思い通りのデータベース操作を自動でこなすには必要不可欠の高い壁です。これを越えないと他人に使ってもらうようなアプリケーションとしてのデータベースを構築することは出来ません。

 最初、初心者向けの参考書を見ながら操作をしていても、確かに書いてあるとおりの操作をすればその通りになるのは分かるのだけれど、なぜそうするのかがあまり理解できずに、従ってその手順とちょっと違うことをしようとしても応用が効かず。
  その為にいろんな参考書も探してみましたが、入門用の本にはそう言った知りたいことはあまり書いてなくて、手順だけ教えてくれる物がほとんど。逆に詳しく書いてありそうな本は上級者向けの本ばかりで、勉強を始めたばかりの自分では結局ほとんど理解出来ず、何で中級者向けの本が無いんだろうと不思議に思っていたのですが、今になって思えば、詳しく説明しだせば入門書でなく上級向けになってしまうからだったのかなあという感じはしています。
  結局Access関連の本は10数冊買い込みましたね(^^;
 入門向けの本は何冊も使ってみましたが、どれも似たり寄ったりでした(^^;。結局入門向けの本はあくまでAccessの紹介レベル止まりで、やっぱりちょっと突っ込むと分からないことばかり。まあ、無理もありません。
  少し明かりが見えてきたのが技術評論社の「ACCESS97販売管理実践テクニック」という、業務ソフトをAccess97で作成する手順を紹介してくれた本を1冊こなしたあたりからでした。全体の構成と流れと、VBAの使い方が少しずつ分かってきたような感じがしました。

 次にやはりデータベースを自動で操作するにはSQLの知識が必要不可欠ということで、SQL言語の勉強を本格的にしてみました。この時に使ったのは ソフトバンクの「SQLプログラミング入門」という参考書で、これはSQLを分かりやすく説明していてとても役に立ちました。
  OracleMasterのSQLにチャレンジしたのもちょうどこの頃でした。
 SQLコマンドが分かるようになると、クエリの意味がよく分かるようになりますし、またVBAの中で直接データベースを操作出来るようにもなります。

 最後にVBAですが、この勉強にはAccess97のパッケージに付属していた「アプリケーション開発ガイド」とナツメ社の「Access97 VBAハンドブック」、「Access97 SQLハンドブック」、「Access97 DAOハンドブック」、技術評論社「Access2000 表現百科500」を使いましたが、VBAの理解を深める上ではマイクロソフトの「アプリケーション開発ガイド」が一番役に立ちました。他の参考書には書いてないこともたくさんありましたし、Accessの仕組みというものがやっと分かってきた感じがしました。
 ナツメ社のハンドブック3冊も、トータルすれば2000ページほどはありましたが、どんな機能があるのかだけは記憶にとどめておこうと、いやになりながらもとにかく全ページに目を通しておきました。
 技術評論社「Access2000 表現百科500」も、さまざまな機能を確認するのに結構役に立ちました。

 と、簡単に私のAccessの格闘記を紹介してみましたが、確かに思いの外険しい道でしたが、でも決して乗り越えれない壁でもありません。ぜひこれから勉強を始めるという方も諦めずに頑張ってみて下さい。私も実は2度ほど途中でギブアップしそうになりましたから(^^;
 またVBAはAccessに限らずExcel/Word/Outlookでも同様に活用できますし、またVisual Basicもずいぶんと身近に感じられるようになるはずです(^^)