6

.Net DLL に一連の計算メソッドがあります。これらのメソッドを Excel (2003+) ユーザーが利用できるようにして、スプレッドシートで使用できるようにしたいと考えています。

たとえば、私の .net メソッド:

public double CalculateSomethingReallyComplex(double a, double b) {...}

ランダムなセルに数式を入力するだけで、このメソッドを呼び出せるようにしたいと思います。

=CalculateSomethingReallyComplex(A1, B1)

これを達成するための最良の方法は何ですか?

4

2 に答える 2

8

ExcelDna ( http://www.codeplex.com/exceldna ) も参照してください。ExcelDna は、.Net を使用してネイティブ .xll アドインを作成できるオープン ソース プロジェクト (商用利用も無料) です。ユーザー定義関数 (UDF) とマクロの両方を作成できます。アドイン コードは、VB、C#、または F# コードを含むテキスト ベースのスクリプト ファイル、またはマネージ .dll に含めることができます。

COM ベースの自動化ではなく、ネイティブの Excel SDK インターフェイスが使用されるため、ExcelDna ベースのアドインは簡単に展開でき、登録は必要ありません。ExcelDna は、Excel '97 から Excel 2007 までの Excel バージョンをサポートし、Excel 2007 データ型 (大きなシートと Unicode 文字列) のサポート、および Excel 2007 でのマルチスレッド再計算を含みます。

于 2009-01-09T14:17:39.000 に答える
3

2つの方法があります-VisualStudioTools for Office(VSTO)を使用できます。

http://blogs.msdn.com/pstubbs/archive/2004/12/31/344964.aspx

または、COMを使用できます。

http://blogs.msdn.com/eric_carter/archive/2004/12/01/273127.aspx

VSTOメソッドが古いバージョンのExcelで機能するかどうかはわかりませんが、COMメソッドは正常に機能するはずです。

于 2008-09-10T15:36:08.357 に答える