0

フロントエンドとバックエンドに分割されたアクセス データベースを構築しました。このフロントエンドには、かなりの量の VBA プログラミングが含まれています。すべてのユーザーが使用できるように、両方を職場の共有ドライブに配置しました。しかし、それを開くことができるのは私だけです。他のユーザーがそれを開くと、Access のホーム画面が表示され、最近開いたファイルや新しいデータベースなどが表示されます。ただし、他のユーザーのコンピューターで自分のアカウントでログインすると、開くことができます。ユーザーがそれを開くことができない理由はありますか? すべての VBA がコンパイルされるように .accde として公開したので、参照エラーにはなりません。

4

2 に答える 2

2

さて、私は質問を投稿するのを少し急いでいましたが、問題を理解しました。バックエンドは、アクセスが制限された共有ドライブのフォルダーに保存されていたため、ユーザーがデータにアクセスすることを心配する必要はありませんでしたが、つまり、私ではなくそのフォルダーにアクセスできないユーザーが、 、フロントエンドを開けませんでした。解決策: バックエンドをロックダウンし、共有の場所に配置します。

于 2013-02-27T22:15:36.277 に答える
1

バックエンドデータベース内のリンクされたテーブル、およびそれらへのVBA参照に、完全に修飾されたネットワークドライブパスがあることを確認してください。この問題に関連して同様の状況が発生しました。

全員がデータベースと共有ドライブにアクセスできる場合でも、Novellなどの一部のネットワークシステムでは、各ユーザーの共有ドライブのアクセス許可が個別にマッピングされ、エイリアス化されます。その結果、同じネットワークドライブパスを、ユーザーごとに異なるドライブ文字にマッピングできます。

したがって、たとえば、ログインすると、ファイルがG:\ Shared Stuffにあることがわかります。ただし、別のユーザーがこのネットワークドライブをH:\SharedStuffにマップしている可能性があります。その結果、フロントエンドデータベースを引き続き表示できますが、参照するドライブがH:ドライブにマップされているため、G:\SharedStuffを参照またはリンクするインタラクションは失敗します。これは、アクセスウィザードを使用してデータベースを分割したり、リンクテーブルを作成したりする場合に簡単に発生する可能性があります。

ドライブ文字を使用するNovellなどのファイルシステムを使用している場合、解決策は、マップされたドライブ文字によって抽象化されているパスの一部を含む、完全なファイルパスを使用することです。したがって、たとえば、G:\ Shared Stuffの代わりに、\\ Company Data \ My Department's Data \SharedStuffのようなものを使用する必要がある場合があります。

Novellでは、「マップネットワークドライブ」を調べることで完全なネットワークパスを見つけることができます。

これが発生する可能性がある唯一の理由ではありませんが、確認する価値があります。幸運を。

于 2013-02-27T22:28:45.517 に答える