1

複数のExcelスプレッドシート用のVBAコードを書いていますが、これは時々他の人と共有されます。ある時点で、私の作品には多くの重複があることに気づきました。そこで、.xlaファイルのような一種のExcelアドインでコードを共有する方法を見つけたいと思います。

しかし、共有コードを含むExcelファイルを.xlaファイルとして保存しようとすると、いくつかの問題が発生しました。

  1. デフォルトのアドインフォルダに保存した後、ファイルを編集できなくなります
  2. .xlsファイルをアドインフォルダー以外のフォルダーに移動して直接開くと(クラスを使用できません)、コードの共有に問題が発生します

柔軟で強力な方法でアドインを作成するためのアイデアはありますか?

助けてくれてありがとう

4

1 に答える 1

1

これがあなたが探しているものであるかどうかは完全にはわかりませんが...

(1)VBAエディターの保存アイコンをクリックして.xla/ .xlamコードを保存します。ただし、保存されるのは、プロジェクトエクスプローラーペインで現在選択されているものです。このペインには、開いているすべてのVBプロジェクトが一覧表示され、通常は左側にあります。編集したばかりのVBAコードを見つめている場合でも、[保存]アイコンをクリックしても、[プロジェクトエクスプローラー]ペインで選択されていない限り、コードは保存されません。何かが保存されたというフィードバックは得られませんが、別のウィンドウでファイルのタイムスタンプを確認することで確認できます。

(2)(数式バーを介して)*。xla / *.xlamファイルのVBA関数を参照する*.xlsファイルがある場合、.xla、 .xlamを開かずに*.xlsファイルを開くと最初にファイルを作成すると、Excelは数式を解決するための外部リンクを作成する場合があります(つまり、開いていないファイルを参照します)。* .xlaファイルを移動または名前変更した場合は、これらの「壊れた数式」で行き詰まり、Excelがグローバル置換を使用して挿入したパス名リンクを編集する必要があります。.xla、.xlamを使用する* .xlsファイルの前に.xla、 .xlamを開くように調整した場合、問題は発生しません(たとえば、デフォルトのフォルダーを使用する場合)。

于 2012-04-15T14:34:23.343 に答える