1

Excel DNA、VS2008、C#、MyUDF(param1、parm2) を使用する Excel アドインで「=MyUDF」と入力して Enter キーを押すと、Excel に 970063926 のような巨大な数字が表示され、MyUDF の c# コードが実行されない

この膨大な数は何だか分かる人いますか?

ありがとう

4

2 に答える 2

1

これは、Excel のちょっと変わった動作です。返される数値は UDF 関数の内部識別子であり、角かっこなしで関数名を入力すると、関数ではなく名前付き範囲のように扱われます。引数なしで関数を呼び出したい場合は、次を使用します。

=MyUDF()

...入力すると、セル内の値またはその名前付き範囲=MyUDFが参照するものを逆参照するのと同じ方法で、関数名を逆参照するように Excel に要求します。=A1A1=MyNamedRange

あなたが観察した動作に実際的な用途があるとは思いませんが、返されたこの値を取得するためにあなたのコードの近くに行くことは確かにありません。

于 2015-06-24T13:52:07.820 に答える
0

この動作を回避する方法はありますか? パラメータが指定されていない場合は、=MyUDF が数値ではなくエラーを返すようにします。

于 2016-01-07T00:08:12.807 に答える