Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8942 / 9994 ←次へ | 前へ→

【4205】Re:リンクのループ?
回答  MJM  - 05/1/19(水) 15:29 -

引用なし
パスワード
   マクロですか?

マクロとなると、
TransferDatabase/データベース変換 アクションのTransfer TypeがLink
DeleteObject/オブジェクトの削除 アクション
または、
RunCommand/コマンドの実行 アクションの
acCmdLinkTables
acCmdRemoveTable
あたりを用いることになるのでしょうか。
マクロはほとんど使用しませんので不明です。

VBAなら、

Dim DB As DAO.Database
Dim RS As DAO.Recordset
Dim TD As DAO.TableDef

Set DB = CurrentDb
Set RS = DB.OpenRecordset("日付テーブル")

Do While Not RS.EOF

  'ローカルでのテーブル名でオブジェクトを作成
  Set TD = DB.CreateTableDef(RS![テーブル名])

  'ローカルテーブルが残ってた場合を考慮して、念のため一旦削除
  On Error Resume Next
  DB.TableDefs.Delete RS![テーブル名]
  On Error GoTo 0

  'リンク先データベースの接続情報を設定
  TD.Connect = ";DATABASE=C:\Temp\db1.mdb"

  'リンク先データベースのテーブル名を設定
  TD.SourceTableName = RS![テーブル名]

  '作成したオブジェクトをコレクションに追加
  DB.TableDefs.Append TD

  'クエリ実行

  'コレクションからオブジェクトを削除
  DB.TableDefs.Delete RS![テーブル名]

  RS.MoveNext

Loop

RS.Close
DB.Close
Set TD = Nothing
Set RS = Nothing
Set DB = Nothing

という感じでは如何でしょうか。
698 hits

【4201】リンクのループ? nemotake 05/1/19(水) 12:30 質問
【4202】Re:リンクのループ? MJM 05/1/19(水) 13:39 回答
【4203】Re:リンクのループ? nemotake 05/1/19(水) 13:51 お礼
【4204】Re:リンクのループ? nemotake 05/1/19(水) 14:27 質問
【4205】Re:リンクのループ? MJM 05/1/19(水) 15:29 回答
【4207】Re:リンクのループ? nemotake 05/1/19(水) 17:07 質問
【4208】Re:リンクのループ? MJM 05/1/19(水) 17:30 回答
【4214】Re:リンクのループ? nemotake 05/1/20(木) 8:57 質問
【4215】Re:リンクのループ? MJM 05/1/20(木) 9:25 回答
【4217】Re:リンクのループ? nemotake 05/1/20(木) 12:12 お礼

8942 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078263
(SS)C-BOARD v3.8 is Free