会員の皆様へ(2009年5月のご挨拶)

Accessの参考書とバックアップ

春もたけなわ

今年は、お彼岸が明け、急に暖かくなったと思ったら、また、涼しくなったりと、天候はやや不順でした。おかげで、咲きかけた桜のつぼみも、一気には開かず、花も一週間は、楽しめました。
  皆様、お元気でしょうか?
  上掲の写真にある、我が家の牡丹も昨年、秋に肥料を多めにやったためか、いつもよりも大振りの花をつけてくれました。そういえば、去年も同じような写真を載せているなと我ながら思います。
 一昨年は、カイウの写真でしたが。そのカイウも冬が比較的、暖かかったせいか、下の写真のようにずいぶんと、丈が伸びて、立派な花をつけてくれました。
葉も肉厚でしっかりしています。
霜であまり痛められなかったせいもあるでしょう。
カイウは、サトイモ科の植物だったと思います。園芸店では、「カラー」と呼ばれていて、様々な色の品種が販売されていますね。
Webで調べると、これらは、サトイモ科のオランダカイウ属に属します。
中でも、白い品種は、湿地を好むようです。
そういえば、この場所も、南側に山茶花の木があり、半日陰で、少し、湿っていますので、我が家のカイウにとっては、好条件なのかも知れません。
 先日は、陽気に誘われてか、のこのこと、蛙が出てきて、この場所に座っていたりしました。
 蛙は、「無事帰る」というしゃれから、焼き物の蛙が縁起物として、玄関脇に置かれたりすることがありますが、我が家では、本物のカエルがお出迎えするかも知れません。
カエルが嫌いな方には、お気の毒かと思いますが、踏みつぶさないように気をつけてやってください。

Access山の難しさ

当教室でもコースを設けている、マイクロソフトのAccessですが、他のOffice製品のWord、Excelに比べて、かなり難しいという印象があるかと思います。
 その理由は、データベースというのが直感的に理解しにくいということと、Access(アクセス)では、本格的な業務用のシステムを構築できるメリットがある反面、どうしてもVBAを利用したプログラムを組む必要が出てくることによるものでしょう。
 現在、当教室で教えているAccessのバージョンは、2002(XP)、2003及び2007と3バージョンです。テキストは、いずれも、FOM出版のAccessの「基礎」と「応用」の2つのテキストを使っています。この上に「マクロ・VBA」というテキストもあるのですが、多くの方が、なかなか、そこまで、たどり着けません。 これは、私の教え方が下手のせいもありますが、やはり、Accessの難しさにもよるところが大でしょう。
 そう、山登りにたとえれば、WordやExcelでは、登りはじめて、少しいけば、Word山やExcel山の楽しさ、快適さが分かるのです。すなわち、基礎編(標準は8回)の段階でも実用に耐えられるのです。
 そうですね、Excel山では、さらに応用編(8回)まで行っていたただけば、ピボットテーブルをはじめとする実務で必要となる道具のあらかたが手に入ります。応用編でも出てこない多くの関数(普通は、あまり縁がない関数も多い)を別にすれば、Excel山の頂上に立ったようなものです。
 この上に「マクロ・VBA」のテキストも用意していますが、そこまで登らなくても、かなりのことができます。
 ところが、Access山では、基礎編(標準8回)の段階では、まだ、見晴らしの利かない山道をてくてくと歩いている状態に似ています。この段階でもテキストに掲載されているデータベース機能(テーブル、選択クエリー、フォーム、レポート)は、一応、扱えるのですが、生徒さんが抱えているシステム化したい用件とは、かなり、かけ離れている面があるのは、否定できません。この道を抜けて、応用編にいき、8回終了していただくと、なんとか、クエリーもアクションクエリーまで、フォームやレポートもサブフォームやサブレポートも出てきますので、業務に利用する道具は、ある程度そろいます。山道でいえば、中腹の山小屋まで、たどり着いた感じでしょうか。そこでも、それなりの眺望があるのですが、実際のシステムに利用しようとなると、まずは、これらのテキストの例を参考に、自分の抱えている業務に即したテーブルの設計からエラー処理まで扱う必要が出てきます。さすがに熱心な生徒さんも、このあたりで息切れがしてきます。
 データベースソフトというのは、Excelのように、とりあえず、表を作って気に入らなければ、作り直しという試行錯誤が気軽にしにくいため、どうしても、必要な道具が全部そろわないと、システム作りに取りかかれない、すなわち、役に立った、という実感が伴わないというところも苦しい点です。
 特に、ExcelやWordと違って、Accessでは、作る人と使う人が異なることが多いという点から、ユーザインターフェースやエラー処理なども作り込む必要があることにつながります。これらには、やはり、VBAが必要です。
 例えれば、VBAは、Access山では、避けて通れない、峡谷にかかる吊り橋です。





Accessの参考書

そこで、やはり、テキスト以外に手助けとなる参考書が必要となります。
 私自身もこれらの参考書に、ふだん、大変、お世話になっています。ここでは、それらを簡単にご紹介しましょう。

書名 著者 バージョン 出版社 出版年 税別価格
(当時)
備考
Access関数 サンプル活用辞典 渡辺克之 97/2000/2002 ソーテック 2003/6 1880円 Accessで使える関数の辞典です。簡単なサンプルコードが付いています。
Excel&Access関数比較字典 門脇香奈子 2000/2002/2003 ソシム 2004/12 1700円 ExcelとAccessの関数の違いなどが分かる点が便利です。
Access VBA応用プログラミング
(Access2000徹底入門)
谷尻かおり 2000 技術評論社 2000/1 2580円 ADOを使ったプログラムの書き方について詳細に書かれています。
私が一番お世話になっている本です。
こんなときどうする?
Access 必ず役立つテクニック 280
同上 2000/2002/2003 同上 2004/11 3480円 谷尻かおり 氏の手になるものです。ソースリストが項目毎に付いており、解説があるので分かりやすいです。
Access VBA 実践 プログラミングテクニック 同上 2000/2002/2003/2007 同上 2008/4 3480円 同じ、谷尻かおり 氏の書かれた機能毎に調べられる辞典です。
逆引き的にも使えますし、順に読んでいこともできます。
Access VBA 逆引き大全 高柳靖子 2002/2003/2007 秀和システム 2007/7 2400円 必要な事柄から命令や関数を調べられる逆引き辞典です。
知りたい個所を素早く調べるために便利です。
VBA 活用術(オフィスの達人 5) 佐野昴成 2003 毎日コミュニケーションズ 2005/4 2200円 Accessだけでなく、Word、Excel、PowerPoint、OutLookにも触れています。かなり高度な内容も掲載されています。

データベースのバックアップ

データベースは、日々、データが増えていくのが通常です。
 誤操作によるデータの破損やAccessのmdbファイルが壊れることに備えて、常時、バックアップをとっておくことが必要です。
 バックアップは、バージョン2003以上では、ファイルメニューから実行できます。あるいは、Windows上でエクスプローラなどでバックアップを行うのであれば、どこへでもバックアップできます。
 しかし、Accessに詳しくない人に行ってもらうためには、ボタン一つでバックアップを実行できる機能が求められます。
 これは、バックアップをとりたいデータベースとは、別のデータベースからVBAを使って行うことができます。前掲の参考書に記載されているので、参考にして下さい。
 しかし、バックアップを行うデータベース自身のバックアップは、2002以下では、VBAを利用してとることができません。
 そこで、いっそのこと、Windows上でバッチファイルを利用してバックアップするというのが、簡単です。
 下記は、バッチファイルのサンプルです。ここでは、c:\○○.mdbという名称のデータベースをバックアップするという前提です。
 □は、半角スペースを表します。
------------------------------------------------------
REM□引数1=バックアップ先フォルダ名  ------ バックアップ先のフォルダ名 %1 で表す。
REM□引数2=日付時刻(yyyymmdd-hhmm) ----- 日付・時刻を表す文字列(ファイル名の後ろに付け、一意にするための引数 %2 で表す)
REM□引数3が1ならば、Lhaplusで圧縮して元ファイルを消去、ゼロならば、そのまま--- 圧縮ソフトで圧縮するか否かを表す引数 %3 で表す。
XCOPY□"C:\○○.mdb"□%1□/D□/R□ /H□/F□/Y  ---- ○○.mdbはバックアップの対象ファイルを%1のフォルダにコピー
CD□%1
REN□○○.mdb□○○%2.mdb  ----------- ○○.mdbを○○yyyymmdd-hhmm.mdbという名称に変更する
if□%3==0□goto□ 1 ----------------- %3の値により分岐する。圧縮しない場合は、1番へ。
"C:\Program Files\Lhaplus\Lhaplus.exe"□/o:%1□/c:zip□%1 - 圧縮・解凍ソフトの「Lhaplus」による圧縮。ここでは、zip形式。
DEL□*.mdb --------------------- 圧縮したときは元ファイルを削除
:1
START□"C:\Program Files\Microsoft OfficeXP\Office10\MSACCESS.EXE"□"C:\○○.mdb" --- ○○.mdbをAccess2002で起動。
-------------------------------------------------------
※上記は、秀和システムの「Windowsコマンド辞典」を参考にしました。
 なお、誤りがあると大変ですので、必ず別途、バックアップをとってからテストした後に自己責任にてご利用下さい。
 Windows上から行う場合は、拡張子をbatのファイル(またはショートカット)をダブルクリックして実行するか、タスクとして登録しておいて、自動的に実行させるか、あるいは、データベースから呼び出すようにもできます。最後の場合は、ボタンを押すと、Shell関数でバッチファイルを呼び出して、AccessをQuit文で終了するようにします。

終わりにあたって

 今回もご覧いただき、ありがとうございました。では、来月まで、どうか、お元気でお過ごしください。
 今後とも、ご愛読のほど、よろしく、お願いいたします。

前回のご挨拶に戻る今月のご挨拶に戻る次回のご挨拶に進む