0

次のように、VBA コードを使用して Excel シートで % を計算しようとしています。

.ActiveCell.FormulaR1C1 = "=IF((ISBLANK(RC[-2])=FALSE),IF((ISERROR(RC[-2]/RC[-1]),0,RC[-2]/RC[-1]),"""")"

しかし、それは私にエラーを与えます。

RC[-2]列が空白の場合、% 列の結果は空白である必要があります。そうでない場合は、ゼロ除算エラーを回避するために分母が 0 であるかどうかを確認する必要があります (#DIV/0! 分母がゼロの場合は入力されます)。

誰かがエラーがどこにあるかを指摘できますか?

4

1 に答える 1

3

あなたは閉じ括弧を見逃しています - これはおそらくうまくいくでしょう (しかし、それがあなたが望むことをするかどうかはわかりません!):

"=IF(ISBLANK(RC[-2])=FALSE,IF(ISERROR(RC[-2]/RC[-1]),0,RC[-2]/RC[-1]),"""")"

またはさらに読みやすい:

"=IF(ISBLANK(RC[-2]),"""",IF(ISERROR(RC[-2]/RC[-1]),0,RC[-2]/RC[-1]))"
于 2012-09-16T22:34:30.887 に答える