リンクテーブルの接続先データベース名取得 Hit Counter

対象バージョン : 97, 2000(MDB), 2002(MDB),  2003(MDB), 2007(ACCDB)
最終更新日 : 2007/02/12 ( オリジナル作成日:1996/12/15 )


概 要

 指定したテーブルのリンク先データベースを返するユーザー定義関数です。

 

構 文

  GetAttDBName(String)

解 説

GetAttDBName 関数の戻り値は文字列型 (String)です。

引数に指定されたテーブルのリンク先のデータベース名をフルパスで返します。

GetAttDBName 関数では次の引数を使用します。

引数 内容
String テーブル名を示す文字列式です。

String に存在しないテーブルを設定した場合や、リンクテーブルでない場合、 GetAttDBName 関数は長さ 0 の文字列 ("") を返します。

 

ユーザー定義関数
Function GetlnkDBName (Arg_TBLName As Variant) As String
Dim db As DAO.Database
Dim tbd As DAO.TableDef
Dim iFound As Boolean

Set db = CurrentDb
db.TableDefs.Refresh
iFound = 0
For Each tbd In db.TableDefs
    If tbd.Name = Arg_TBLName Then
        If Len(tbd.Connect) = 0 Then
            Beep
            MsgBox "該当テーブルはリンクされたものではありません"
        Else
            If InStr(tbd.Connect, "ODBC;") > 0 Then
                MsgBox "該当テーブルは ODBC 接続です"
            Else
                GetlnkDBName = Mid(tbd.Connect, InStr(1, tbd.Connect, "DATABASE=", vbTextCompare) + 9)
            End If
        End If
        iFound = True
        Exit For
    End If
Next
If iFound = False Then
    Beep
    MsgBox "テーブルが見つかりません"
    Exit Function
End If
db.Close
End Function

補 足

 

改定履歴


目次へ戻る