対象のデータベースが現在開いていない限り、リモートの.accdbファイルに接続してコンテンツをテーブルに書き込むことができますしかし、私は開いている間もそのデータベースに書き込むことを余儀なくされています。両方とも開いている状態で、database1.tableAからdatabase2.tableAへ手動でコピー&ペーストすると正常に動作します。しかし、なぜVBAは仕事をやっていないのですか?ここで私はこれまで試したものです:VBA経由で別のMS Access 2010データベース内から現在開かれているMS Access 2010データベースに書き込む方法
ウェイ1:(ドイツ語からの翻訳)
...
Dim dbTarget As Database
Set dbTarget = DBEngine.Workspaces(0).OpenDatabase("X:\path\to\file.accdb")
...
エラー:
... failed with error (3029): No valid account name or no valid password.
ウェイ2:
...
Dim wrkDev As Workspace
Dim dbTarget As Database
Set wrkDev = CreateWorkspace("", "Admin", "", dbUseJet) ' adopted from microsoft docs
Set dbTarget = wrkDev.OpenDatabase("X:\path\to\file.accdb", True)
...
エラー(ドイツ語から翻訳されたもの):
... failed with error (3029): No valid account name or no valid password.
なぜそれを修正するのですか?
その '.accdb'のセキュリティ状況は何ですか? (セキュリティで保護されたリンクテーブル/ユーザレベルのセキュリティで保護されていない/暗号化されていない/セキュリティ保護されていない)。 '.accdb'形式はセキュリティの種類をサポートしていないのに対し、ユーザレベルのセキュリティ手法を使って' .accdb'を開こうとしているようです。 –
この場合、暗号化にはトピックはありません。 sys管理者であっても、そのファイルに関する特定の設定は確認されていません。あなたは何を知りたいのですか?私はリモートファイルをダブルクリックするだけで、読み書きができます。リモートデータベースはマルチユーザーモードです。 「彼ら」はそのデータベースで動作しますが、私はそのテーブルにデータを供給することができます。 – user1014412
それは私には安全ではないようです(しかし確かに興味があります)。私は2つの代替アプローチをあなたと共有します、おそらく最初のものが動作します。 –