#116 | MDBファイル自身のフルパスを知るには? | VBA | |
Accessで現在開かれているデータベースの情報は、Applicationオブジェクトの「CurrentDbメソッド」で得ることができます。このメソッドは「Databaseオブジェクト」を返します。このオブジェクトの持つプロパティ"Name"は、自分自身のデータベースのファイル名(.MDB)だけでなく、ドライブ+フォルダ情報も返します。 例えば、次のコードをイミディエイトウィンドウから実行してみて下さい。"Application."の部分は省略しても構いません。 Debug.Print Application.CurrentDb.Name
"C:\My Documents\db1.mdb" のような値が表示されるはずです。レコードセットを扱ったりする一連のプログラムの中では、Databaseオブジェクトの変数を使って、次のような記述もできます。 Dim dbs As Database
Set dbs = CurrentDb Debug.Print dbs.Name また、次のようなコードによって、フルパスからMDBのあるフォルダ名だけを取得することができます。データベースがどこにあろうと、「カレントデータベースと同じフォルダにエクスポートする」といった処理に利用できます。最後にDebug.Printで表示されるstrFolder変数の内容が、ドライブ+フォルダ名です。 Dim strFolder As String
strFolder = CurrentDb.Name strFolder = Left$(strFolder, InStrRev(strFolder, "\", , vbTextCompare)) Debug.Print strFolder ※カレントデータベースのドライブ+フォルダ名を得る方法として、次のようなものもあります。 Debug.Print Application.CurrentProject.Path & "\"
|
|||
|
Copyright © T'sWare All rights reserved |