#363 リンク先のデータベースファイル名を取得するには? VBA

他のデータベースファイルのテーブルをリンクしている場合、そのリンク先データベースファイルのフルパスを取得した場合があります。例えば、そのデータベースファイルのテーブルに直接アクセスしたような場合、あるいはそのデータベースファイルをファイル単位で取り扱いたい場合(ファイルのコピーなど)などが考えられます。

リンク先のデータベースファイル名は、次のようなコードで取得することができます。ここで"得意先"とある部分には、実際にリンクされているテーブル名の1つを指定します。TableDefオブジェクトの「Connect」プロパティにはそのリンク先となっているデータベースやテーブルに関する情報が接続文字列として格納されていますので、文字列関数を使ってその中からデータベースファイルのパス情報の部分だけを取り出します。

Dim dbs As Database
Dim tdf As TableDef
Dim strConnect As String
Dim strMDBFilePath As String

Set dbs = CurrentDb

'リンクテーブルの定義情報を開く
Set tdf = dbs.TableDefs("得意先")

'リンクテーブルの接続情報を取得
strConnect = tdf.Connect

'リンク先データベースファイル部分を取り出し
strMDBFilePath = Mid$(strConnect, InStr(strConnect, ";DATABASE=") + Len(";DATABASE="))

MsgBox strMDBFilePath


実行結果:
実行結果
| Index | Prev | Next |

この情報は参考になりましたか?、問題は解決しましたか?、もしまだなら......
T'sWareのワンポイトテクニカルアドバイスをご利用ください。3000円/件〜でご支援します。
スタンドアロンからSQL Server対応まで、オーダーメイドのシステムを短納期・安価でお届けします


Copyright © T'sWare All rights reserved