Accessで処理mdbとデータmdbに分けて、データmdbをリンクテーブルとして読み込んでいるのですが、データmdbのパスが変わったとき、処理mdbでデータmdbのパスを変更しなければなりません。
それが、面倒なので、手軽に変更できるように作っているのですが、「MSysObjects」の「Database」を書き換えるようと、VBAでADODB処理をしているのですが、アップデートすると「更新可能なクエリであることが必要です。」となり、書き換えることが出来ません。
strSQL = "SELECT * FROM MSysObjects;"
~
data.open strSQL ~
data("Database") = NewDatabase
data.Update
といった感じの処理です。因みに環境はAccess2000です。
何か、リンクテーブルを自動で書き換える簡単な方法は無いものでしょうか。
No.1ベストアンサー
- 回答日時:
'DAO3.x の参照設定が必要です。
Dim dbs As DAO.Database
Dim tdf As DAO.TableDef
Set dbs = CurrentDb
For Each tdf In dbs.Tabledefs
If Len(tdf.Connect > 0 Then
tdf.Connect=";DATABASE=" & strPath '新mdbのフルパス
tdf.RefreshLink
End If
Next
bonaronさん早速の回答ありがとうございました。
外部的に処理をしたかったので、コモンダイアログなんかで、mdbを開いたて、そのmdbのリンクファイルを指定したPathに変更するというようなことをしたかったのですが、外部mdbからMSysObjectsを変更することは出来ないようですね。(他に方法があるかもしれませんが)
CurrentDbだと、自分のMSysObjectsを見に行くので、希望通りの処理は出来ないようです。
それぞれのmdbに上記のような処理をさせていくことで対応したいと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Access DAOのExecuteメソッドのオプション(RecordsetOptionEnum)に 1 2022/09/19 07:34
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
- HTML・CSS WEBサイトの構築。表示データとWEBデザインを分離する考え方を専門用語・業界用語では何と言うか? 8 2022/09/27 09:16
- Excel(エクセル) ネットワーク上のエクセルとリンクしている時にデータ更新をvbaで、refresh Allで行う場合の 2 2023/04/10 05:39
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- Visual Basic(VBA) vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成 2 2023/03/02 18:54
- Access(アクセス) ACCESS2019 ナビゲーションウィンドウの色 1 2022/05/10 17:15
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Accessのリンク先を相対パスにしたい
その他(データベース)
-
Accessのリンクテーブルのパスを相対パスにする方法について教えて頂きたいです
Access(アクセス)
-
アクセスのリンクテーブル一覧をsqlで表示させると
その他(データベース)
-
-
4
アクセス2000でのリンク先テーブルの変更方法
Access(アクセス)
-
5
Accessで、1つの項目に複数の置換えを1度でするには?
Access(アクセス)
-
6
Accessで別mdbのテーブルをコピー
その他(プログラミング・Web制作)
-
7
Access→Excelへエクスポートすると日付の表示形式が変化する
Excel(エクセル)
-
8
テーブルリンク リンク元を知りたい
Access(アクセス)
-
9
Accessでフィールド名を変数(文字列)で・・・
Access(アクセス)
-
10
コモンダイアログコントロールがコンポーネントにありません
Visual Basic(VBA)
-
11
Accessのフィールド数が255しかない=業務では使えない?
PowerPoint(パワーポイント)
-
12
アクセス 項目毎にデータを横に並べる方法
Access(アクセス)
-
13
ACCESSで開いているユーザーの特定方法
Access(アクセス)
-
14
ACCESS VBAでインポート定義の場所
Access(アクセス)
-
15
DAOのTableDefs(TblName").ConnectはADOでは"
その他(データベース)
-
16
Access サブフォームでの選択行の取得
その他(データベース)
-
17
アクセスと同フォルダのCSVファイルをインポートしたい
Access(アクセス)
-
18
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
19
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
-
20
「RunSQL」と「Execute」の違い
Access(アクセス)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelのマクロでAccessのmdbを...
-
「○○○.ldb」のAccess レコード ...
-
Accessデータベースの最適化をE...
-
Accessで「誰々が使用中です」...
-
Access2003でVBAツールの参照設...
-
Accessのmdbを開こうとしたとき...
-
ACCESSのモジュールエラー?
-
排他のエラーメッセージ
-
Excelでmdbファイルが簡単に開...
-
Database.mdbと言うファイル
-
accessなしの人にも、accessのM...
-
ファイルは開くのに「見つから...
-
【Excel】[Expression.Error] ...
-
SQLPLUSで結果を画面に表示しない
-
Batch: フォルダ内の特定のファ...
-
特定のエクセルファイルを起動...
-
VBAでCSVファイルが使用中かど...
-
共有フォルダに誰が何にアクセ...
-
(Excelマクロ)datファイルをエ...
-
実行時エラー459 withステート...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ACCESSのモジュールエラー?
-
Accessデータベースの最適化をE...
-
「○○○.ldb」のAccess レコード ...
-
Accessのmdbを開こうとしたとき...
-
accessのmdbが勝手にできている?
-
Accessで「誰々が使用中です」...
-
アクセスをネットワークでリン...
-
ExcelのマクロでAccessのmdbを...
-
Excelでmdbファイルが簡単に開...
-
Access2003でVBAツールの参照設...
-
Accessでリンクテーブルのパス変更
-
ファイルは開くのに「見つから...
-
アクセスのファイルが壊れた!!!!!!
-
ACCESS mdbファイル 更新日時
-
Accessのmdb分析(解析)方法ま...
-
アクセスでレポート作成時のエ...
-
ほかのユーザーが同じデータに...
-
Database.mdbと言うファイル
-
accessなしの人にも、accessのM...
-
他のPWがかかっているファイル...
おすすめ情報