メソッド属性アプローチを使用せずに、C# で動的にワークシート関数を作成することは可能ですか? それとも、これは XLL を使用してのみサポートされているものですか?
私が達成しようとしているのは、ソースから関数リストを (パラメーターと共に) 取得し、これらの関数を登録することです。これらの関数はサーバーへの呼び出しとしてのみ機能するため、これらの関数の内容は重要ではありません。
ご意見をお寄せいただきありがとうございます。
メソッド属性アプローチを使用せずに、C# で動的にワークシート関数を作成することは可能ですか? それとも、これは XLL を使用してのみサポートされているものですか?
私が達成しようとしているのは、ソースから関数リストを (パラメーターと共に) 取得し、これらの関数を登録することです。これらの関数はサーバーへの呼び出しとしてのみ機能するため、これらの関数の内容は重要ではありません。
ご意見をお寄せいただきありがとうございます。
あなたのシナリオは、.Net で Excel ユーザー定義関数アドインを作成するための無料のライブラリであるExcelDna ( CodePlexまたはGoogle グループ上) によってサポートされています。また、エクスポートされた関数とマクロをオンザフライで作成することもできます。これらの関数は、見つけてリフレクションを使用して読み込むアセンブリに含めるか、DynamicMethods を使用してオンザフライで関数を生成できます。
ただし、ExcelDna は .xll アドインとして実装されているため、オートメーション アドインよりもいくつかの利点があります。したがって、これはあなたの質問に正確には答えません。リフレクションを使用して自動化アドインを作成および登録できるはずですが、ExcelDna の実装よりも優れている点はわかりません。
--統治--
結局のところ、そうではありません。
実行時に関数を登録できるのは、XLL アドインだけです。