1

Excel シートのさまざまな場所で使用するいくつかの関数を登録した .xll プラグインがあります。パフォーマンスが非常に悪く、元のコードがなかったため、関数を VB でモジュールに記述して機能を複製しました。関数は期待どおりに機能し、パフォーマンスははるかに優れています。

問題は、シートが新しい機能を自動的に認識しないことです。たとえば、セルの数式が"=CustomFunction()"であるとします。これは以前に xll で定義され、現在は VB で定義されています。セルを手動で編集して Enter キーを押さない限り、これは "#NAME" として表示され続けます。次に、VB の数式を正しく取得して計算します。

数式を再計算する標準的なトリック: Ctrl/Alt/Shift/F9 は機能しませんでした。

これを経験した人はいますか?これを解決する方法はありますか?

4

1 に答える 1

0

グローバル検索を行い、=CustomFunction を =TempCustomeFunction に置き換えます。次に、グローバルな名前を =CustomFunction に戻します。これにより、Excel に関数の再評価が強制されます。(彼が最初に交換した後、保存、シャットダウン、および再起動する必要があるかもしれないという漠然とした考えがありますが、確実にするために最初に試してください)。

私は同様の問題に遭遇したと確信しており、それを行うことでそれが修正されました。修正するワークブックがたくさんある場合は、自動化を介してこれを行う必要があるかもしれません。

于 2009-04-02T12:27:04.100 に答える