VBA で Excel 用の XLAM アドインを開発し、別の .NET プロジェクトを構築しています。完全に XLAM で同じ問題を解決する必要があり、このコードを書き直したくありません ( DRY )。
別の .NET プロジェクトで XLAM アドインの関数を再利用する方法はありますか?
たとえば、その後、.NET プロジェクトにコンパイルxlam
しdll
てインポートできますか???
ダヴズ、
XLAM を dll に変換する方法は、すぐには利用できないようです。場合によっては、異なるアプリケーション間で関数を共有する方法があります。たとえば、Excel と VB.net の両方で共有できる COM 関数を作成します。この SO の質問と、特に詳細な議論に関連するコメントを参照してください: XLAM / XLA Addins: is there a better way?
複数のレイヤーの機能を持つアドイン、または最大数の機能を共有するアドインが必要な場合は、編集/書き込みの繰り返しを最小限に抑えます。これは、コーディングの問題と同じくらいアドインの設計の問題であると考えます。 . この MSDN リンクは、アドインの設計についてより詳しく説明しています: http://msdn.microsoft.com/en-us/library/bb384200.aspx
したがって、アドインを Windows アプリケーションと連携するように設計する方法を検討し、優先アプリケーション間の変換を可能な限り「橋渡し」するために使用できるアプローチを選択する必要があると私は主張します。前述の COM メソッド。
より直接的な変換方法については、VB 関数を .NET 関数と比較し、.NET の対応する関数と直接比較してそれらの部分を書き直します。その多くはマイクロソフトによって詳細に文書化されています。これは DRY の原則に従う完璧な方法ではないことは確かですが、ゼロから始めるよりはましです。
幸運を、
~JOL