サーバー側のインストールには、Access データベースにアクセスできるようにすべての Office コンポーネントがインストールされていると仮定します。そうでない場合は、サーバーに Access/Office または少なくともいくつかのドライバーをインストールする必要があります。これが良い考えかどうかというトピックについては、意見を留保します。
スクリプト タスク内で、SSIS の下の Access データベースでマクロを実行すると、この問題が発生しました。
- タスクは、開発環境のデスクトップで実行されます
- 開発環境のサーバー上で実行されます
- サーバーにリモート接続されている間に実行されるスケジュールされたジョブとしてサーバー上で実行されます
- リモートで開始されたスケジュールされたジョブとしてサーバー上で実行されますが、サーバー上でリモートデスクトップを開いている間のみです
最終的に、HKEY_USERS の下にあるサーバーのレジストリのすべてのエントリを調べて、Software\Microsoft\Office\14.0\Access\Security を探しました。
VBAWarnings のエントリを持たないエントリがいくつかありました。そのような場合、DWORD VBAWarnings を作成して 1 に設定しました。これで問題が解決したようです。
私の結論は、Access がスケジュールされたタスクを介して実行される場合、Access はわずかに異なる配置で実行されるということです。
これが実際には同じ問題であり、これで問題が解決することを願っています。