2003年10月24日にリリースされたMicrosoft Accessの最新版『Microsoft Office Access 2003』の使用感についてレポートします。まだ実際にすべての機能を使い切って確認したわけではありませんので、Access2003のほんの一部に過ぎないと思いますが、新しく追加された機能を中心に、そのいくつかの紹介と、勝手な使用感を報告します。
- データベースウィンドウの変化
さっそくAccess2003を起動して新規データベースを作成してみました。
その操作手順、そして作成されたデータベースウィンドウを見てみても、Access2000あるいは2002とまったく違いはありません。
しいて言えばデータベースウィンドウ上に表示されているアイコンが立体的、WindowsXP風のアイコンになった程度で、バー上に並んでいるオブジェクトやボタン類の配置などはまったく変化はありません。このことから、データベース全体的な構成に関してはまったく変化はないことが想像できます。
- ツールバーの変化
Access全体のイメージチェンジを大きく印象付けているのがツールバーの変化です。ツールバー全体が何となく浮き出しの立体的になった点、さらにグラデーションがかかって鮮やかになった点がとても目立ちます。ただ、ツールバー自体の機能が変わったわけではなく、あくまで外見上の変化だけです。
「こういったインタフェースでアプリケーションを作るとカッコいいなあ」と思いつつも、実際に使ってみると難点も感じます。ツールバーの背景色と各ボタンの色彩のコンビネーションが非常に類似した感じ(いずれも淡色)になっているため、パッとそれぞれのボタンを識別しづらい点です。もちろん人それぞれの印象もあるでしょうが、いろいろ操作してみて、瞬間的に目的のボタンにマウスが行かないことが時々あります。まあこれもそのうち慣れれば問題なくなるかもしれませんが。
- 各種設定の継承
ツールバーなどを操作していて、各ボタンの配置がAccess2002のものとまったく同じであることにふと気が付きました。今回、Access2003は2002がすでにインストールされているパソコンにインストールしました。2002については、自分の使いやすいように、ツールバーの配置や各種のオプション設定などをいろいろデフォルトから変更してありますが、2003ではそれらがそのまま継承されているのです。
これまでであれば、バージョンアップするたびに、前のバージョンの設定を確認しながら、同様の設定を1つ1つ行わなければなりませんでしたが、Access2003ではそのような面倒な作業はまったく不要なようです。これはAccessのウィンドウだけでなく、モジュールのウィンドウ(VBE)の方も同様です。全般的な印象として、Access2003はインストールやその後の使い始めはとても楽という感じです。
ただこれは、2002のレジストリの設定を"コピー"しているのか、それとも"共有"しているのかまでは確認していません。
- 既定のデータベース形式と互換性について
Access2003で新規データベースを作成して、データベースウィンドウを見てみると、そのデータベースファイルの形式は「2000形式」となっています。これは2002のときと同様、Access2003でも2000形式のファイルを扱えることを示しています。Access2000ユーザーも安心して(2002を飛び越えて)Access2003にアップグレードできます。
また、Access2002のときと同様、データベースを新規作成したときの"既定のデータベース形式"はオプションで設定できるのですが、ここを見ると特筆すべきことが分かります。データベース形式の分類が「2000形式」と「2002
- 2003形式」という2つしかないのです。つまり、2003形式という特別なものはなく、2002も2003もまったく同じということです。詳細はチェックしていませんが、このことからテーブルやフォームなどのデザインにおいても、プロパティやイベントなどの新規追加はなかったであろうことが推測できます。
- VBAに関するセキュリティの強化
今度は、Access2002で作ったデータベースファイルをAccess2003で開いてみました。すると突然、今まででは考えられなかったタイミングでダイアログが表示され、驚かされます。
このメッセージやヘルプをいろいろ確認してみると、Access2003ではVBAに関するセキュリティが強化され、データベースを開こうとすると、開いてよいかどうかの確認メッセージが表示されるようになったのです。考えてみれば、マクロウィルスが出始めたころからExcelではすでにその対応策としてやっていることですので、当然といえば当然の機能なのですが、個人的にはAccessの場合はモジュールがあって当たり前と思っているので、かなり面倒くさい感じもしないではありません。しかしこれも不穏なソフトが流通するネット時代、仕方ないのかもしれません。
ちなみにこのメッセージは、セキュリティのレベルを下げるか、開発者側でモジュールにデジタル署名を付けユーザー側でその開発者を信じるという設定をすれば出なくなるようです。いずれにしても、ユーザー側が安全かどうかを判断するというワンクションが必要となります。ある程度この辺のセキュリティの警告を理解している人ならよいですが、そうでない人に対してデータベースファイルを配布するような場合(オンラインソフトなど)、きちんとした説明をしないと、しばらくの間は不審がられてしまう可能性があるかもしれませんね。
※セキュリティの設定は[ツール]-[マクロ]-[セキュリティ]メニューから行いますが、Access2002がインストールされているパソコンに2003をインストールした場合には表示されないという問題があるようです。その場合はメニューバーをリセットすることで表示されるようになります(Microsoftサポート技術情報より)。
- フォームデザインの変化
Access2002で作ったデータベースファイルを開き、フォームを開くと、2002とまったく同じデザインのフォームが表示されます。
一方、Access2003でデータベースを新規作成し、フォームを作成、コントロールを配置すると、WindowsXP風、あるいはIE6.0風のフォーム(というよりフォーム部品)となります。Access2003で新規作成したデータベースに2002のフォームをインポートした場合も同様です。
これは、それぞれのコントロールの機能はまった同じですが、ユーザーに与えるフォームの印象はかなり違います。個人的にはやっとXPのデザインにAccessが追い付いたなという感じです。
このデザインの機能は、Access2003でデータベースを新規作成した場合に限るというものではありません。オプションに追加された「Windowsのテーマを使用する」機能によるものです。Access2002で作ったデータベースはこのオプションがOFFとして読み込まれ、Access2003で新規作成されたデータベースはデフォルトでONとなります。したがって、Access2002で作ったデータベースでも、このオプションを切り替えれば、すぐに上図のようなデザインに変更することができます。
- フィールドプロパティのフォームへの反映
従来から「名前の自動修正」という機能があり、テーブルのフィールド名を変更すると、そのフィールドをコントロールソースとしているコントロールのプロパティも自動的に追従して変更されるようになっていました。
一方、ウィザードを使ってテーブルからフォームを作成した場合、フィールド名はもとより、「書式」や「定型入力」、「既定値」、「入力規則」、「説明」まで、さまざまなフィールドのプロパティがテキストボックスなどのプロパティとして設定されました。
この、名前の自動修正の機能と、フィールドプロパティとフォーム/レポートとの関連性が今回より強化されています。つまり、テーブルのフィールドのプロパティを変更した場合(フィールド名以外でも)、その設定が、対応するフォーム上のテキストボックスなどのコントロールのプロパティにも自動的に反映させるようになったのです。もちろん勝手に反映されては困る場合もあるので、確認してから反映されるようになっています。
次の例では、「顧客名」というフィールドがフォームのテキストボックスと連結しています。フィールドの「説明」プロパティはもとよりコントロールのステータスバーテキストプロパティと関連性を持っています。したがって、フィールドの説明文を変更すると、確認後、対応するすべてのコントロールのステータスバーテキストプロパティにそれを反映させることができます。
- SQLビューのフォント変更
個人的には、クエリのデザインにおいてはかなり「SQLビュー」を使う方だと思います。しかしその画面はどうもフォントサイズが小さくて見づらいのと、高度な編集ができないので、ほとんどの場合、テキストエディタにコピーして編集を行い、その結果をSQLビューに貼り付け戻すという作業を行っています。
今回、やっとその1点目が解決されました。オプション設定によって、SQLビューのフォントを自由に設定できるようになりました。
あとはVBEのコードウィンドウ並みの編集機能が追加されれば文句なしです。
- SQLビューの状況依存のヘルプ表示
もともとAccessやVBAのヘルプは、目的のトピックにたどり着くという点ではあまり使いやすいとは思えませんでしたが、今回SQLビューに関してはかなりよくなった点がこれです。
クエリのSQLビュー上に何らかのSQL文を書いて、そのいずれかにカーソルがある状態でF1キーを押すと、その文に関連したヘルプを表示してくれます。これまで、特にSQL文に関してはヘルプで見つけづらかったという印象があるので、これはなかなか便利だと思います。
- バージョン番号の比較
Access2002からAccess2003へのバージョンアップによって、バージョン番号がどれだけ変わったのか、バージョン情報で確認してみました。特にVBAは、VBが.NETになったあとなので気になるところです。
■Access本体
- 2002 → 10.4302.4219 (SP-2)
- 2003 → 11.5614.5703
■VBA
- 2002 → 6.3.8863
- 2003 → 6.4.8869
ご覧のように、Access本体は確かに1ケ分のメジャーバージョンアップとなっていますが、VBAについて0.1というマイナーバージョンアップに留まっています。組み込み関数などについては詳細は確認していませんが、過去にヘルプにおいてVBAの新しい関数などが紹介されていたことを考えると、今回それがないところからも判断して、VBAはまったく変わっていないとみてよいかもしれません。
また、実は上記のVBAの2002のバージョンは、Access2003をインストールしていない別のパソコンのものを参考にしています。Access2002がすでにインストールされているパソコンにAccess2003をインストールした場合、Access2002から起動されたVBEで確認できるVBAのバージョンも6.4.8869になっています。つまり、VBAに関しては既存のものが上書きされ、かつAccess2002からも2003からも共通的に使えるということなのでしょう(それくらい違いがない)。
ちなみに、今回追加されたオブジェクトやプロパティも、スマートタグ関連など、ほとんど限られたものとなっているようです。郵便番号などからそのエリアの地図を表示させるような機能は使えるかもしれませんが、独自のスマートタグを開発する必要性はどれほどあるか.....?
- オブジェクトの依存関係の表示
外観上としては、今回のバージョンアップでもっとも目立つツールです。また機能的にももっとも役に立つことは間違いないでしょう。データベース開発者としては、もっともっとこのようなツールを増やしてもらえばうれしいのですが。
名前の自動修正機能では、内部的にオブジェクトの依存関係の情報を持っており、それに基づいて名前の変更を行っていたはずですが、今回のこの新機能では、その依存関係をビジュアルに画面表示してくれます。しかも、表示されたオブジェクト名をクリックするとそのオブジェクトのデザインを開くことができ、データベースウィンドウのように使うこともできます。
データベースにどんどんオブジェクトが増えていくと、その関係を管理するのも大変ですが、これを使えば一発でその関係を把握することができます。特に、オブジェクトの重要な部分(フィールド名など)を変更したり削除したりするような場合、必ずこれで事前チェックを行うようにするとよいと思います。
この機能を使うためには、オプション設定で名前の自動修正をONにする必要がありますが、これまでその設定をしていなかったデータベースについても、この表示を行おうとするとその確認メッセージが表示され、すべての依存関係をトラックし直してくれます。
また、この依存関係表示は次の2種類の表示が可能となっています。
- このオブジェクトに依存するオブジェクト
あるテーブルがどのクエリやフォーム/レポートで使われているかを確認することができます
- このオブジェクトが依存するオブジェクト
あるフォームがどのテーブル/クエリを元にしているかを確認することができます
- ラベル貼り付け時のエラーチェック
テキストボックスコントロールやリストボックスなどをフォームなどに挿入すると、いっしょにラベルコントロールも挿入されます。このときテキストボックスなどとラベルは親子の関係を持っており、テキストボックスを移動するとラベルも移動し、テキストボックスを削除するとラベルも削除されるというように、常に従属関係がありました(これは以前のバージョンからです)。
一方、そうしていっしょに挿入されたラベルコントロールを削除した場合、あとからラベルコントロールだけを挿入しても、親子の関連付けを再度行うことはできませんでした。以降、別々のコントロールとして常に2つを同時に扱う必要がありました。しかし、今回のバージョンアップではそれが簡単にできるようになりました。
ラベルコントロールを挿入すると、スマートタグという形でエラーが表示されます。そして、不要であればそのエラーを無視することもできますし、テキストボックスなどと関連付けしたければ、既存のコントロール一覧から選択するだけで、簡単にそれを行うことができます。テキストボックスなどといっしょに挿入されるラベルは便利な場合と邪魔くさい場合があるので、それらを使い分け、かつあとからも自由に親子関係を設定し直せるのは大変便利です。
- ファイルとの関連付けの切り替え
あるパソコンにAccess2003だけをインストールしている場合にはまったく関係のない話しなのですが、Access2002などもインストールしている場合に便利だなと感じたのが、ファイルの種類(拡張子)とアプリケーションとの関連付けです。
Accessでデータベースファイルを開く場合、Accessを開いてからデータベースを開く場合と、エクスプローラなどから直接ファイルをダブルクリックするなどして開く場合があると思います。前者の場合は簡単にAccessのバージョンを使い分けすることができますが、後者の場合にはその都度任意に切り替えるというわけにはいきません。しかし、MDBや.MDEに対するアプリケーションの関連付けの切り替えは比較的スムースに行えます。開くプログラムの選択画面において、Access2003と2002の2つが"推奨されたプログラム"としてトップに表示されるからです。
これはおそらくAccessではなく、WindowsXPというOSに依存した機能だとは思いますが、2つのバージョンを使い分ける必要性のある人には便利だと思います。
- ライセンス認証とDevelopers Editionについて
新機能などではありませんが、それ以外に2点ほど追記しておきたいと思います。
まず、ライセンス認証ですが、これは従来のAccess2002の方式とまったく同じです。インターネットなどを通して(電話でも可)認証を行わないと、50回(?)までに起動が制限されます。また、1つのライセンスで、デスクトップ1台の他、携帯用のノートパソコン1台までインストールすることができます。
また今回残念なのは、Developers Editionがなくなったことです。特に従来のバージョンでは、それに付いていたAccessラインタイムの再領布権およびセットアップディスクの作成機能に何度かお世話になったのですが、今回は「Visual
Studio Tools for Office」というパッケージを別途購入しなければなりません。仕事柄を考えれば金額的にはよいのですが、別途買うほどの魅力はないような.....。それについては今度考える予定です。
なお、オプション設定はAccess2002のものがそのまま引き継がれているということ、VBAのバージョンはほとんど変わっていないということを書きましたが、Office
XPのDevelopers Editionに付属していたVBE用のアドインツールも、なぜかOffice 2003の通常エディションで使えるようです。もちろんOffice
XP Developers Edition がインストールされているパソコンにOffice 2003を追加インストールした場合ですが、それらのツールのお世話になっている人は要チェックでしょう。
|