3

いくつかの VBA モジュール/クラスで多数の機能を備えた Excel .xlsm ファイルを作成しましたが、4 つの異なるサイトで共有されるため、コードを分離することにしました。

vba_code.xlsm を共有の場所に保存し、4 つの異なる siteXYZ.xlsm ファイルを作成しました。

各 siteXYZ.xlsm ファイルで、VBA エディターの [ツール | 参照] メニューに移動し、共有ファイルの場所 \share_location\fileLocation\vba_code.xlsm にある共有 vba_code.xlsm への参照を追加します。

この時点で、siteXYZ.xlsm の関数をテストしたところ、すべて正常に動作しました。

ただし、siteXYZ.xlsm を保存し、Excel を閉じてファイルを再度開くたびに、vba_code.xlsm ファイルへの参照が失われます。

VBA 参照を siteXYZ.xlsm ファイルと一緒に保存するにはどうすればよいですか?

4

3 に答える 3

15

回答を探すのに何時間も費やし、vba_code.xlsm ファイルにデジタル署名を追加したり、プログラムで Workbook_open に参照を追加しようとしたりするなど、さまざまな方法を試した後、問題を説明しているフォーラムの投稿を見つけました。

私の siteXYZ.xlsm ファイルには VBA コードやマクロが定義されていなかったため、Excel は VBA プロジェクトの保存を拒否し、その結果、VBA リファレンスを vba_code.xlsm に保存しませんでした。

解決策は簡単でした:

任意の VBA コードを siteXYZ.xlsm に追加して保存します

VBA エディターで ThisWorkbook をダブルクリックし、何もしない関数を Workbook_open に追加しました。

Private Sub Workbook_open()

End Sub
于 2013-05-14T17:08:31.413 に答える