即効テクニック

ファイル操作・他アプリケーションとの連携

既存のAccessデータベースを参照する

(Access 2000/2002/2003)
● 概要 ●
構文  expression.OpenDatabase(Name, Options, ReadOnly, Connect)
      expression.Close

・OpenDatabaseメソッド

expression
Workspaceオブジェクトを指定[省略可能]

Name
既存のJetデータベース(mdbファイル)の名前を文字列式で指定[省略不可]

Optionst
排他モードでデータベースを開くときにTrue、共有モードで開くときにFalse(既定値)を指定[省略可能]

ReadOnlyt
読み取り専用権限でデータベースを開くときにTrue、読み取り/書き込み権限で開くときはFalse(既定値)を指定[省略可能]

Connect
さまざまな接続情報を文字列式で指定[省略可能]

・Closeメソッド
設定項目        内容
expression      Databaseオブジェクトを指定[省略不可]

OpenDatabaseメソッドで指定したデータベースを開き、そのデータベースを参照します。
また、Closeメソッドでデータベースを閉じます。
OpenDatabaseメソッドはWorkspaceオブジェクトの指定を省略すると、既定のワークスペースを指定したことになります。
引数にはパスを含めたファイル名を指定しますが、既定のデータベースフォルダにあるファイルを参照する場合は、パスを省略することができます。
次のコードは、「Northwind.mdb」を開き、その名前を表示するものです。


● 設定 ●
動作確認をするためには、Visual Basic Editorのメニューから[ツール]→[参照設定]コマンドを選択し、[参照設定]ダイアログボックスで「Microsoft DAO 3.6 Object Library」にチェックを入れてください。


● サンプル ●
Sub OpenDatabaseSample()
    Dim myDB As Database
    Dim myFile As String
    myFile = "C:\Program Files\Microsoft Office\Office10\Samples\Northwind.
mdb"
'データベースを開く
    Set myDB = OpenDatabase(myFile)
    '開いたデータベースの名前を表示
    MsgBox "ファイル名: " & myDB.Name
    'データベースを閉じる
    myDB.Close
End Sub


● 注意 ●
引数に指定したファイルが存在しない場合、エラーが発生します。上記のサンプルでは「Northwind.mdb」を使用していますが、指定したパスにこのファイルがない場合は、別の既存のデータベース名に置き換えて実行してください。