D
数量列 ( ) とレート列 ( E
)を含む範囲があります。セルには、レート * 数量の小計を求めるF1
数式 があります。=D3 * E3
レート セルのほとんどが空なので、列のほとんどにF
とだけ表示されます#VALUE!
。
が空の場合に小計がゼロになる=IF(ISNUMBER(E1), E1 * D1, 0)
ことを期待して、数式を に置き換えようと思いました。 しかし、Excel ではその数式が受け入れられず、構文など数式に問題があることを示すポップアップが表示されます。E1
私には、 がE1
数値の場合は を使用しE1 * D1
、そうでない場合は を使用するのがまったく問題ないように思えます0
。
数式を入力しようとすると、Excel からエラーが出ます=IF(ISNUMBER(E1), E1 * D1, 0)
。なぜでしょうか?
答え1
良い一日、
あなたの式は機能するように見えますが...
もう 1 つのオプションは、=IFERROR(E1*D1,0) を試すことです。E1 x D1 が計算され、それ以外の場合はゼロが入れられます。
残念ながら、他のエラーが隠れてしまう可能性があります。数値がテキストとして入力され、計算が行われていないことが示されます。興味深いことに、この例で数式が計算を完了した (とにかく数値として処理した) が、下部の合計数式ではテキストとして扱われていることを実証しようとしています。セル E4 は、何が起こるかを確認するために、二重の負のテキスト値 (日付の入力ミス) で試したものです。
これが役に立つことを願います、ブラッド
答え2
レートセルのほとんどは空なので、F列のほとんどには、
#VALUE!
計算における空のセルは、Excel によって空のセルとみなされます0
。空のセルはおそらく存在しませんが、次のようになります。
- 数式の結果は空文字列(
""
)、または - 一つのアポストロフィ(
'
)
数式を に置き換えようと思ったのです
=IF(ISNUMBER(E1), E1 * D1, 0)
が、構文などに数式に問題があるというポップアップが表示されます。
地域設定によっては、;
の代わりにを使用する必要がある場合があります,
。