SQLite3をバックエンドにAccessを使用しています。
数台のPCで同時に使用したいため、SQLite3のファイルをクラウドに保存し、
各PCでリンクテーブルの参照を変えて使用します。
これを毎回手動でやるのは手間なので、VBAでやりたいのですが、
参考書の通りやっても、SQLiteだからか、できませんでした。
以下コードですが、丸写しなのでさっぱりです。
一応、Typeプロパティの値を"LINK"としているところが怪しいと思っているのですが・・・。
分かる方がいらっしゃったら助かります。
Public Function RefreshLinks(ByVal strFilePath As String) As Boolean
Dim cat As New ADOX.Catalog
cat.ActiveConnection = CurrentProject.Connection
Dim tbl As ADOX.Table
On Error GoTo eh
For Each tbl In cat.Tables
If tbl.Type = "LINK" Then
Debug.Print tbl.Name
tbl.Properties("Jet OLEDB:Link Datasource").Value = strFilePath
End If
Next
Set cat = Nothing
RefreshLinks = True
Exit Function
eh:
RefreshLinks = False
End Function
No.1ベストアンサー
- 回答日時:
当方ADOXでやった事がないのでDAOになってしまいますがご参考に
Private objDB As DAO.Database
Private objTBDef As DAO.TableDef
Public Function RefreshLinks(ByVal strFilePath As String) As Boolean
Dim tbl As Variant
Set objDB = CurrentDb
On Error Resume Next
For Each tbl In objDB.TableDefs
If objTBDef.Connect <> "" Then
'Debug.Print tbl.Name
objTBDef.Connect = ";DATABASE=" & CStr(strFilePath) & ";TABLE=" & objTBDef.Name
objTBDef.RefreshLink
End If
Next objDB.TableDefs
objDB.Close: Set objDB = Nothing
Exit Function
End Function
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) EXCEL VBAにて動的にCheckBOXを複数作成し、同BOXにイベントを追加したい 1 2023/03/16 07:05
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) フォーム上のリストボックスに重複して表示しています 3 2022/10/19 11:55
- Visual Basic(VBA) 複数のcsvファイルをExcelに一括変換したい 2 2023/03/03 12:44
- Visual Basic(VBA) 別シートから年齢別の件数をカウントしたいの続き 5 2023/01/24 00:16
- Visual Basic(VBA) 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする 3 2022/03/23 15:43
- Visual Basic(VBA) 【VBAエラー】Nextに対するForがありません 対策について 5 2022/11/21 21:26
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
- Visual Basic(VBA) このマクロの説明文を教えてほしいです。 1 2023/01/12 09:17
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
sqlplusの処理が途中でとまる
-
[Access]時間帯の重複チェック
-
SELECTで1件のみ取得するには?
-
Date型にNULLをセットしたい V...
-
ORDER BY 半角カナ
-
SQL>UPDATEと同時にその件数を...
-
oracleのinsert select性能
-
Oracleでの文字列連結サイズの上限
-
GROUP BYを行った後に結合した...
-
select句副問い合わせ 値の個...
-
OracleのSQL*PLUSで、デー...
-
GROUP BYを使ったSELECT文の総...
-
ファイル書込みで一行もしくは...
-
Accessで別テーブルの値をフォ...
-
キーが同じを複数行を1行にま...
-
サブフォームに新規レコードを...
-
Excelでセルの書式設定を使用し...
-
SELECTの結果で同一行を複数回...
-
DataGridViewにてセル以外をク...
-
サブレンジ分割されたNDB(富士...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECTで1件のみ取得するには?
-
Date型にNULLをセットしたい V...
-
SQL>UPDATEと同時にその件数を...
-
oracleのinsert select性能
-
sqlplusの処理が途中でとまる
-
ACCESSのSQLの書き方
-
異なるDB間でのJOINやVIEWについて
-
プロシージャで変数をテーブル...
-
SELECTでの指定行からの指定行...
-
ORDER BY 半角カナ
-
AccessVBAでリンクテーブルの参...
-
☆☆☆☆SQL Olacle 3つ以上の文字...
-
ACCESSとORACLEで抽出結果が異なる
-
PostgreSQLで小数点以下を処理...
-
オラクル オブジェクトのデー...
-
正規化?の戻しについて
-
取得するデータの件数指定、MyS...
-
SQLで抽出可能でしょうか?
-
GROUP BYを行った後に結合した...
-
Accessで別テーブルの値をフォ...
おすすめ情報