■1.DAOによるデータアクセス

 ExcelやVisual BasicでAccessのデータベースファイル(Jetデータベース)を操作する場合は、DAOというオブジェクトを介してデータベースファイルにアクセスします(これは、ローカルデータベースへのアクセスも、リモートデータベースへのアクセスも可能になっています)。
 DAOは、2種類のワークスペースと呼ばれる、データベースを操作するセッションをサポートしています。ひとつは、Jetワークスペースで、Jetデータベース、Jet接続型ODBCデータソース、そしてParadoxやLotus 1-2-3のような他の形式のISAMデータソースにアクセスすることができます。もうひとつは、ODBCDirectワークスペースと呼ばれるもので、このワークスペースを使用すると、JetデータベースエンジンをロードすることなくODBCドライバを経由してデータベースサーバーにアクセスすることができます。
 DAOのオブジェクト構造は、このワークスペースの違いに対応して、2種類のオブジェクト構造をもちます。いずれも最上位のオブジェクトが「DBEngine」オブジェクトになっており、ここから派生したオブジェクトで組み立てられています(図1)。

図1:JetワークスペースでのDAOのオブジェクト構造

 DAOのオブジェクトの使い方は、このあと実際にデータベースファイルを操作しながら解説してゆきますが、DAOではデータベースファイルに格納されているテーブルやフィールド、レコードデータ、クエリーなどをすべてオブジェクトとして扱うように作られています。したがって、VBAからデータベースファイルを操作する場合は、ExcelやWordのVBAコードと同じように、これらのデータベース特有のオブジェクトにプロパティとメソッドを組み合わせて、処理を作成してゆきます。