2

INDIRECT 数式でエラーを無視し、代わりに 0 を出力する方法を探しています。私はそれをラウンドアバウトに機能させていますが、もっときちんとしたいと思っています。

INDIRECT別のワークシートからセルをロードする式があります

=INDIRECT("'Invoice (2)'!A1")

を使用した理由INDIRECTは、'Invoice (2)' という名前のシートが利用できない場合 (つまり、一時的に削除した場合)、数式が変更されないようにするためです。

でも。「Invoice (2)」シートがない場合、次のエラーが表示#REF! されます。結果を「0」にすることをお勧めします。

AGGREGATEこのフィールドを非表示にしてからフィールド で参照するという回避策があり=AGGREGATE(9,6,N19)ます.6はエラーを無視して「0」を配置し、これは完全に機能します.

ですから、2つを組み合わせてよりきれいにする方法があるかどうか、私はただ興味があると思います. 集計以外のコマンドでは「無視エラー」が発生すると思われます。

試してみたところ=AGGREGATE(9,6,INDIRECT("'Invoice (2)'!A1"))、スクリプトはデータを正常に検出しましたが、本来のようにエラーを無視しません。

4

1 に答える 1

4

次のように、数式をIFERROR関数でラップします。

=IFERROR(INDIRECT("'Invoice (2)'!A1"),0)
于 2014-11-11T21:24:02.580 に答える