• 締切済み

Access 2000 VBA リンクテーブル

Access 2000 VBAでシステム開発を行っております。 Oracle 7 と接続してリンクテーブルを作成しています。 通常は問題なく動作するのですが、 Access のフォーム上にボタンを配置して、あるボタンがクリックされたら、 リンクテーブルの参照先を変更して、リンクテーブルを再作成するといったことを 行おうと考えております。 しかし、ソース上でリンクテーブルの参照先を変更しても、 元の参照先でリンクテーブルが作成されてしまい、大変困っております。 どなたか本現象について分かられる方がいらっしゃいましたらご回答のほど 宜しくお願いいたします。 以下がリンクテーブル作成時のソースになります。 Function Create_odbc_table(str_OraTblName As String, str_mdbTblName As String) As Long On Error GoTo Create_odbc_table_Err Create_odbc_table = True Set DBS = CurrentDb DBS.TableDefs.Delete Trim(str_mdbTblName) DBS.TableDefs.Refresh Set tdfA = DBS.CreateTableDef(Trim(str_mdbTblName)) tdfA.Connect = "ODBC;DSN=" & DSN_NAME & ";UID=" & Oracle_UID & ";DBQ= " & Trim(TNS) & ";ASY=OFF;PWD=" & Oracle_PWD & ";TABLE=" & Trim(str_OraTblName) tdfA.SourceTableName = Trim(str_mdbTblName) DBS.TableDefs.Append tdfA DBS.Close end function

みんなの回答

  • danslarue
  • ベストアンサー率30% (4/13)
回答No.2

こちらではDelete Create しないで Connect に再代入する方法を行っています。 tdf.Connect = <接続文字列> tdf.Attributes = dbAttachSavePWD tdf.RefreshLink Access 2003, postgreSQL または SQLServer で実施しています。 Oracleだとうまくいかないと言うことはないと思います。 どこかで例外が発生していませんか。

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

> On Error GoTo Create_odbc_table_Err の飛び先が無いところを見ると、かなり端折ってる? Deleteは成功してるのかな? STEP実行して、一行ずつ結果を確認してみては?

関連するQ&A