次の方法で共有


Application.OpenCurrentDatabase メソッド (Access)

OpenCurrentDatabase メソッドを使用して、既存の Microsoft Access データベースを現在のデータベースとして開きます。

構文

OpenCurrentDatabase (filepath, Exclusive, bstrPassword)

expressionApplication オブジェクトを 表す変数。

パラメーター

名前 必須 / オプション データ型 説明
filepath 必須 String パス名およびファイル名拡張子を含む既存のデータベース ファイルの名前を指定します。
排他 省略可能 Boolean データベースを排他モードで開くかどうかを指定します。 既定値は False で、データベースを共有モードで開きます。
bstrPassword 省略可能 String 指定したデータベースを開くために使用するパスワードを指定します。

戻り値

なし

解説

このメソッドを使用して、以前は OLE Automation と呼ばれる Automation を使用して Microsoft Access を制御している別のアプリケーションからデータベースを開きます。 たとえば、Microsoft Excel の OpenCurrentDatabase メソッドを使用して、Access ウィンドウで Northwind.mdb サンプル データベースを開くことができます。 別のアプリケーションから Access のインスタンスを作成したら、新しいデータベースを作成するか、開く特定のデータベースを指定する必要もあります。 このデータベースが [アクセス] ウィンドウで開きます。

データベースを既に開き、Access ウィンドウで別のデータベースを開く場合は、 CloseCurrentDatabase メソッドを使用して、別のデータベースを開く前に最初のデータベースを閉じることができます。

注:

OpenAccessProject メソッドを使用して、現在のデータベースとして既存の Access プロジェクト (.adp) を開きます。

注:

OpenCurrentDatabase メソッドと ActiveX データ オブジェクト (ADO) Open メソッド、または Data Access Object (DAO) OpenDatabase メソッドを混同しないでください。 OpenCurrentDatabase メソッドは、Access ウィンドウでデータベースを開きます。 DAO OpenDatabase メソッドは、特定のデータベースを表す Database オブジェクト変数を返しますが、実際には Access ウィンドウでそのデータベースを開くわけではありません。

次の例では、Automation を介して別のアプリケーションから Access データベースを開き、そのデータベース内のフォームを開きます。

このコードは、COM コンポーネントとして機能するアプリケーションの Visual Basic モジュールに入力することができます。 たとえば、Excel、Visual Basic、または Access から次のコードを実行できます。

Application オブジェクトを指す変数がスコープ外になると、それが表す Access のインスタンスも閉じられます。 したがって、この変数はモジュール レベルで宣言する必要があります。

' Include the following in Declarations section of module. 
Dim appAccess As Access.Application 
 
Sub DisplayForm() 
 
 Dim strDB as String 
 
 ' Initialize string to database path. 
 Const strConPathToSamples = "C:\Program " _ 
 & "Files\Microsoft Office\Office11\Samples\" 
 
 strDB = strConPathToSamples & "Northwind.mdb" 
 ' Create new instance of Microsoft Access. 
 Set appAccess = _ 
 CreateObject("Access.Application") 
 ' Open database in Microsoft Access window. 
 appAccess.OpenCurrentDatabase strDB 
 ' Open Orders form. 
 appAccess.DoCmd.OpenForm "Orders" 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。