[PR]ネットとスマホ まとめておトク!

エクセルの計算で教えてください。
数値をA列B列C列と入力しD列に答えが出るように
したいです。数式はA*B*C=D
そこで質問なのですがこの式ですとAやBやCに数値が入っていないとDの答えが出ないのですがA、Bに
数値が入っていなくてもDに答えが出るように出来ないでしょうか?質問が解りにくいかもしれませんがよろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんばんは。


そんなにややこしいことをしなくても、

=product(a:c)

で、空白セルは無視して乗算をするはずです。
    • good
    • 2
この回答へのお礼

 たしかに出来ました。ありがとうございます。

お礼日時:2005/03/02 10:20

再びこんばんは☆


補足ありがとうございます!

とゆーことは、IF関数を使って。
例えばA1、B1、C1に数値があって、D1に答えを出すのなら…。
Dに「=if(and(A1=0,B1=0,C1=0),0,if(A1=0,1,A1)*if(B1=0,1,B1)*if(C1=0,1,C1))」でいけると思うのですが☆

多分、#2さんと同じです^^
    • good
    • 1
この回答へのお礼

回答いただきましてありがとうございます。

お礼日時:2005/03/02 10:25

A1、B1、C1に適当な値が入っているばあい、D1に次のようなIf関数でなら次のようになります


=IF(AND(A1=0, B1=0, C1=0),0,IF(A1=0,1,A1) * IF(B1=0,1,B1) * IF(C1=0,1,C1))
A1、B1、C1全部が0の時は、0になります。
    • good
    • 1
この回答へのお礼

 出来ましたありがとうございました。

お礼日時:2005/03/02 10:26

こんばんは☆



数値が入っていないと、0だと認識されるんだと思います。
だから、数値が入っていないところをかけ算してもDには「0」って出ちゃいます;

例えば、AとBには何も入っていなくて、Cに3って入っていた場合、Dには「3」と表示させたいのですか??

この回答への補足

はいそうなんです。A列には人数B列には日数C列には単価を入れたのですが各部署に使わせる為C列の単価の欄だけ入力してくる部署があります。なのでC列はかならず入力しますがA列が抜ける場合やB列が抜けるなどのケースがあります。

補足日時:2005/03/01 19:19
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセルで空欄の場合は計算しない方法

A1をA2から引いて答えをA3に入るようにしました。
A1には必ず数字が入るのですがA2は確定したら数字を入れます。
A3の合計を出したいのですがA2に何も記入していない場合0と判断され計算されるので、合計が合いません。
A2に数字を入れて初めて計算されるようにするにはどうしたらいいでしょうか?

Aベストアンサー

セルの中身が空白かどうかチェックするISBLANKという関数があります。

=IF(ISBLANK(A2),"",A1+A2)

こうすれば、A2がブランクの時、この式は長さゼロの文字列を返します。

QExcel 空白セルの掛け算で答えがエラー、0の違いについて

よろしくお願いします。

Excel2002で作った表をExcel2003で開いて修正しています。
2つのセルを掛け合わせる計算のセルをオートフィルすると、掛けるデータのない行では#VALUE!のエラーになりました。
ここで空白データのセルでDeleteを叩いてみたところエラーが0に変わりました。
試しに関係のないセルで空白セル同士の掛け算をやってみると答えが0になりました。

エラーが出る場合と、0になる場合の違いは何でしょうか?
どうかよろしくお願いします。

Aベストアンサー

こんにちは。maruru01です。

No.1の方の指摘のようにスペースが入っている場合もありますが、何も文字(スペースも含めて)が入っていないのにエラーになる場合もあります。
例えば、セルA1に「=""」と入力します。
次に、A1をコピーして、A2を選択して、右クリックの[形式を選択して貼り付け]で[値]にチェックして[OK]します。
(念のためA3を選択して、[Delete]しておいて下さい。)
これで、B1に、「=A1*1」と入力してA3までコピーします。
A1とA2がエラーになると思います。
このA2には、言わば「長さ0の文字列」が入っていることになります。
この「長さ0の文字列」は、別のアプリやWEB上からのコピペでも入ることがあります。
で、文字列を計算に使うとエラーになります。
一方A3は、「未使用・未入力」という状態です。
ブックやシートを新規作成した直後と同じで、Excelでは計算する際は「0」に変換されます。
で、「長さ0の文字列」と「未使用・未入力」は見た目でもい、数式バー上でも見分けは付きません。
もちろん、エラーになったら[Delete]してやればいいですが、最初から数式で対応することも出来ます。
仮に、元の数式が、

=A1*B1

としたら、これを、

=N(A1)*N(B1)

とします。
N関数は、A1やB1に文字列(長さ0の場合も含む)があると、「0」に変換してくれるので、エラーになりません。
それか、

=IF(COUNT(A1:B1)=2,A1*B1,"")

のように、IF文で、両方に数値が入っていなければ「""」にするように分岐処理させる方法もあります。

こんにちは。maruru01です。

No.1の方の指摘のようにスペースが入っている場合もありますが、何も文字(スペースも含めて)が入っていないのにエラーになる場合もあります。
例えば、セルA1に「=""」と入力します。
次に、A1をコピーして、A2を選択して、右クリックの[形式を選択して貼り付け]で[値]にチェックして[OK]します。
(念のためA3を選択して、[Delete]しておいて下さい。)
これで、B1に、「=A1*1」と入力してA3までコピーします。
A1とA2がエラーになると思います。
このA2には、言わば「長...続きを読む

Qエクセルの計算結果が0になってしまいます

エクセルのセルに計算式を入力しても、Σで和を求めようとしても、「0」と表示されてしまい、求めたい計算結果が出ません。
理由と対策について教えていただきたいです。

Aベストアンサー

先に計算式を入力して後から数値を入力したのでは?
画面の下のほうに再計算というのがでていませんか?
でていればF9ボタンを押してみてください。
計算されれば計算方法が手動になっているはずです。
メニューのツール→オプションを選択して計算方法を手動から自動にすればなおります。

Qエクセルで空白セル”” と未入力セルの違い

関数で セルA1 に=if(B1=0,"","入力済")
としました。
セルの選択を素早くするためにショートカットキー「Ctrl+↓」を
利用しています。
通常の未入力空白セルは上記のショートカットで飛ばされて選択
されません。
これに対して上記関数で ""  として入力されたものを
コピーして値だけを貼り付けたとしても
上記ショートカットキーで飛ばされず選択されてしまいます。
見た目は 全く同じ 空白セルです。(関数も値貼り付けをしているので消えています。)
未入力の空白セルと 関数で""と入力されて値貼り付けを受けたセルではどこが違うのでしょうか。
また、未入力の空白セルに 戻すには関数でどのように入力させればいいのでしょうか。もちろんDeleteKeyを使って未入力の空白セルに
戻るのですがそれではショートカットキーでとばせるメリットがなくなります。関数で大量に処理したいのです。
おわかりの方お教えください。

Aベストアンサー

>未入力の空白セルと 関数で""と入力されて値貼り付けを受けたセルではどこが違うのでしょうか。

未入力の空白セルは「ISBLANK関数」で「真」を返します。

一方、値としての""が貼り付けられたセルは「ISBLANK関数」で「偽」を返します。

>また、未入力の空白セルに 戻すには関数でどのように入力させればいいのでしょうか。
不可能です。「式」は「値」を返すので「空白セル」と言う「状態」を返す事は出来ません。

>もちろんDeleteKeyを使って未入力の空白セルに
>戻るのですがそれではショートカットキーでとばせるメリットがなくなります。関数で大量に処理したいのです。

つまり「セルを1つづつ選択してDeleteキーで1つづつ空白セルに戻すのが面倒」なので「全部を一気に空白セルに戻す良い方法は無いか?」と言う事ですね?

だったら簡単です。

すべての式を
=if(B1=0,"","入力済")
ではなく
=if(B1=0,1/0,"入力済")
にしておきましょう。

すると、未入力の所は、空白("")にならず「#DIV/0!」になります。

そう表示されたら、シート全体を選択し「CTRL+G」を押して「ジャンプ」を出します。

「ジャンプ」のダイアログが出たら「セル選択」を押し、セル選択のダイアログを出します。

セル選択のダイアログが出たら「数式」を選び、その下のチェックは「エラー値」だけにします。

「OK」を押してダイアログを閉じると「#DIV/0!」の表示になったセルのみが選択状態になります。

「#DIV/0!」の表示になったセルのみが選択状態になったら、Deleteキーを押して、それらのセルを一気に「空白セル」にして下さい。

もちろん、大量にあっても、手順は変わりません。

>未入力の空白セルと 関数で""と入力されて値貼り付けを受けたセルではどこが違うのでしょうか。

未入力の空白セルは「ISBLANK関数」で「真」を返します。

一方、値としての""が貼り付けられたセルは「ISBLANK関数」で「偽」を返します。

>また、未入力の空白セルに 戻すには関数でどのように入力させればいいのでしょうか。
不可能です。「式」は「値」を返すので「空白セル」と言う「状態」を返す事は出来ません。

>もちろんDeleteKeyを使って未入力の空白セルに
>戻るのですがそれではショ...続きを読む

Qエクセル関数を使ったら値が0になるエラー

こんにちは。
教えてください。
毎週アップデートして使うエクセルのファイルがあるのですが
SUM関数などを使うと0になって計算がされないようになってしまいました
以前、別の件で似たようなことがあったときは
ファイルを開いて「マクロを有効にしますか」というウィンドウで無効を選択すると、ちゃんと計算されました
ですが今回はマクロのメッセージは表示されませんし、何が原因なのかよく分かりません
何が原因なのか教えてもらえませんか?
ヨロシクお願い致します

Aベストアンサー

マクロを有効にするか否かのメッセージはマクロセキュリティの設定が「 中 」のときに表示されます

セキュリティの設定が「 低 」または「 高 」になっていれば、「 中 」に」してみましょう
 ※ セキュリティの設定が何を行っているのか、なぜその必要があるのかを併せて理解しましょう

"0"は、再計算のオプションが、自動で再計算しない設定になっているのかもしれません
オプションから計算方法のタブを開いて、計算方法の項目の「 自動 」にチェックが付いていなければチェックを付けてください
(そのままでも、F9キーを押せば再計算されます)

あとは、SUM関数で参照する範囲を確認してみましょう
文字列になっていたら数値に変更してください
(空いているセルに数値の 1 を入力してそのセルをコピーし、SUM関数が参照する範囲を選択したのちに
 「形式を選択して貼り付け」から乗算(掛け算)を選び OK をクリックすると
 選択した全てのセルに対して 1 を掛けてくれますので、文字列型になっているセルは
 強制的に数値型に直されます
 修正が終わったら 1 は削除してしまいましょう
 ツールの「区切り位置」でも列単位で型を変更することができます
 これは説明するよりも自身でいろいろ試してみることをお薦めします)

マクロを有効にするか否かのメッセージはマクロセキュリティの設定が「 中 」のときに表示されます

セキュリティの設定が「 低 」または「 高 」になっていれば、「 中 」に」してみましょう
 ※ セキュリティの設定が何を行っているのか、なぜその必要があるのかを併せて理解しましょう

"0"は、再計算のオプションが、自動で再計算しない設定になっているのかもしれません
オプションから計算方法のタブを開いて、計算方法の項目の「 自動 」にチェックが付いていなければチェックを付けてください
(...続きを読む

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qエクセルで、合計をもとめたいが、空白セルがある

合計を求めたいのですが、ところどころに空白があります。
今は、一つずつ、金額の入ってるセルをクリックして、+をおしていっています。
簡単にできる計算式教えてください。

Aベストアンサー

SUM関数をお試しください。
連続したセルなら開始セル:終了セル、不連続なら「,」区切りとして下さい。

Q値が入っているときだけ計算結果が表示されるようにするには・・?

エクセル計算式で、簡単な引き算(ex.セルC1=A1-B1)ですが、どちらかの数値が入力されていないときは計算結果を表示させないようにするにはどのようにしたらよいのでしょうか・・・?簡単な質問ですみません!!

Aベストアンサー

そのままをIF文にすると
=IF(OR(A1="",B1=""),"",A1-B1)
になるかと思います。

QEXCEL 計算空白セル/0(ゼロ) 無視する方法

以下のように、

=B7/((D7/E7)+(F7/G7)+(H7/I7))
の中で[D7・E7・F7・G7・H7・I7]のどれかが、空欄か0(ゼロ)の場合、#DIV/0!と返ってしまいます。

そのときにゼロや空欄を無視して計算する方法があったら教えてください。

この計算式にあたる関数も良く分からないので、困っています。


※昨年比を出すため、逆算式を入れています。

Aベストアンサー

空白のセルや0のあるセルが分母になる場合にはエラーとなりますね。エラーの部分は計算しないのでしたら次のような式にすればよいでしょう。

=IF(ISERROR(B7/(IF(ISERROR(D7/E7),0,D7/E7)+IF(ISERROR(F7/G7),0,F7/G7)+IF(ISERROR(H7/I7),0,H7/I7))),"",B7/(IF(ISERROR(D7/E7),0,D7/E7)+IF(ISERROR(F7/G7),0,F7/G7)+IF(ISERROR(H7/I7),0,H7/I7)))

QEXCELで0をカウントしないで平均を出したい

平均値を求めたいのですが、AVERAGE関数を使うと値が0の分もカウントされて平均値が出てしまいます。
これを0を除いたものだけの平均値にしたいのです。
ちなみにこの平均値をもとめたいものは他のファイルからリンクを貼ってデータを持ってきています。

リンクを貼ってデータを持ってきていないものは、IF文を使って0だったら空白にするという風にしたら出来たのですが。。

ちなみに、今現在一個一個AVERAGE関数で0以外の部分を選択して出しています。これだと毎回直さないといけないので辛いです。どなたか教えてください!!

EXCELのバージョンは2000です。

Aベストアンサー

SUMIF() と COUNTIF() を使います。平均を求める範囲が A1:A10 だとしたら、

=SUMIF(A1:A10,"<>0",A1:A10)/COUNTIF(A1:A10,"<>0")

という感じで、0を除いた平均が計算できます。


人気Q&Aランキング

おすすめ情報