• ベストアンサー
  • 暇なときにでも

エクセルで#DIV/0!を消す方法

エクセルでパーセンテージを計算する表を作成しています。 A1に日付、B1に会員数、C1に出席者数、D1に出席率とします。D1にC1/B1の数式を入力します。D1の数式を隣のD2~D10までコピーしました。B,C行が空白または0の場合、#DIV/0!と表示されます。数式はそのまま残しておいてこのエラー表示を消す方法はありませんでしょうか。

共感・応援の気持ちを伝えよう!

  • 回答数4
  • 閲覧数4949
  • ありがとう数7

質問者が選んだベストアンサー

  • ベストアンサー
  • 回答No.3

D1の数式を =if(B1=0,"",C1/B1) でどうでしょうか?

共感・感謝の気持ちを伝えよう!

質問者からのお礼

できました。ありがとうございます。

関連するQ&A

  • Excelでのマクロについての質問

    ひとつの例ですが A1 佐藤 A2 山田 A3 田中 A4 高橋 A5~A10 空白 B1 山下 B2 田代 B3 吉田 B4~B10 空白 と元のデータが入力されているとします A1~A10,B1~B10に入力されるセル数は変化します 例えばA4~A7にデータがあり、B1~B10は空白という場合もあります ただし必ず上から順に入力されているとします C1~C10、D1~D10には [C1] =IF(A1<>"",A1&"君",""),[C2] =IF(A2<>"",A2&"君","") ・・・ [D1] =IF(B1<>"",B1&"君",""),[D2] =IF(B2<>"",B2&"君","") ・・・ というように元のデータを 加工するための数式が入力されています マクロが登録されているボタンを押すと E1から下方向へC1,C2,C3,C4,D1,D2,D3,(以後空白)と C1~C10、D1~D10の順に空白を除いた「値」が入力されるよう マクロを組むにはどうすればいいでしょうか

  • エクセルで質問です。

    数式か、VBA、どちらでも良いのですが、 A1=1で、なおかつB1=1の場合、C1からC10のDATAをD1からD10に表示する。 A1=1で、なおかつB1=2の場合、C11からC20のDATAをD1からD10に表示する。     ・     ・     ・ というように、"A1"は1~22まで、"B1"は1~6まで、各数字を組み合わせた時のDATAを表示したいのです。 組み合わせも多いのでどうして良いのか分かりません。 素人の浅知恵ではとても無理ですので、お助け下さいまし。。。

  • 【エクセル】 「3,465」を「 」「3」「4」「6」「5」と表示させたい。

    「エクセル2003の関数式について」 いつもお世話になっております。 以下の件についてご教示いただきたく質問いたします。 セルA1に「3,465」という数値が入力されています。 その数字を分解して、 セルF1に「5」E1に「6」D1に「4」C1に「3」B1に「空白」と表示させるには、どのような数式を1の行に入れるのでしょうか。 よろしくご指導のほどお願いいたします。

その他の回答 (3)

  • 回答No.4
  • dac203
  • ベストアンサー率43% (92/212)

数式はそのままということなので、条件式書式とISERROR関数を用いて「見た目に見えなくする」というのはできそうです(セルに色がついてると面倒ですが)。 EXCELのヘルプで「#DIV/0!」「セル内のエラー値を表示しない」の部分を参照してみてください。 個人的には皆さんが仰っている様に数式に手を加えた方が良いと思います。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

エクセルのヘルプってこんなことまで詳しく載っているとは知りませんでした。これからわからないことがあればまずヘルプを参照してみようと思います。

  • 回答No.2

数式をそのままというのは無理ですね。 A1で回答されているように、何らかの修正を 加えないといけません。 また、今回のケースのように、ゼロ割りは、 「想定される範囲内」ですので、あらかじめ、 対策を打っておくべきですね。 また、空白・0以外を入力された場合も、考慮 したほうが、よいと思います。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

アドバイスありがとうございます。

  • 回答No.1
  • IceDoll
  • ベストアンサー率28% (322/1126)

ISERROR関数を使う方法はどうですか? 参考↓ http://www.venus.dti.ne.jp/~yoshi-o/Excel/Div_by_Zero.html

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ISERRORの使い方勉強になりました。これだとほかの計算式にも応用できそうです。

関連するQ&A

  • エクセルで時間計算

    A1に日付、B1に時間 C1に日付、D1に時間が入っています。 例えば A1に6/20、B1に8:00 C1に6/21、D1に10:00 と入れた時に E1には26(経過時間) F1には1(経過日) G1には2(F1の経過日以降の時間) が表示されるには E、F、G1のそれぞれにどんな計算式を入れたら 良いですか?

  • Excelで、複数列の和を求める式

    Excelで、A1~A10,B1~B10,C1~C10,D1~D10にそれぞれ値があり、E列に、E1にA1からD1までの和、E2にA2からD2までの和、のようにE10まで出したいと思います。E1=SUM(A1:D1)として、下にコピーすればできますが、「E1からE10までの配列数式」として求める式はありますか。SUMの":"と、配列数式の":"が重複してうまくできません。

  • エクセルの数式でマイナスの乗除

    いつもお世話になります。エクセルの表で前年度と今年度の実績比較を作っているのですが、マイナスが入ってくると訳が分からなくなりました(根本的に算数の理解力がないので数式を頼っております・・)。 例えば前年度-2000をA1、今年度-1000をB1に入力し今年-前年の差額をC1に数式「=B1-A1」で入れると1000が立ちます。 この差額の前年度との増減比率(%表示)をD1に出したいのですが、数式「=C1/A1」を入れると-50%と出ます。 実際には赤字ではあっても昨年度より1000アップしているので、数式に手を加えて「=C1/-A1」としてます。 また逆に、A1が-1000、B1が-2000の場合C1が-1000になり、D1に「=C1/A1」を入れると、実際には前年より1000減でも(プラス)100%となってしまいます。 どこか根本が間違っているのでしょうか。 この様な表を約20枚作っているので、一つ一つ正負がおかしい所を探して手動で数式を訂正するのは大変です。 いい方法をご存知の方、知恵を貸していただけたらありがたいです。

  • エクセルの数式のコピーについて教えてください。

    A1のセルに、「+sheet1!A1」 という数式があるとします。この数式をB1、C1、D1のセルに貼り付けると、「+sheet1!B1」、「+sheet1!C1」、「+sheet1!D1」というようになるんですけど、これを、「+sheet1!A2」、「+sheet1!A3」、「+sheet1!A4」、というように、B1、C1、D1のセルに貼り付けることって出来ますか?

  • エクセルの数式を教えてください。

    質問が悪かったようなので、詳しく書きます。 A1に1、B1に1の場合はA/B、B1に1、C1に1の場合はB/C、C1に1、D1に1の場合はC/Dとなるような数式はありますでしょうか? 下記の数式をどう改良したら良いかわかりません。 =IF(AND(SUM(A1:B1)=2,A1=1,B1=1),"A/B","") 宜しくお願いいたします。

  • エクセル関数について再質問

    再度質問します。よろしくお願いします。ちなみに、エクセル2007です。 セルA1に10、B1に11、C1に12、D1に13、E1に100、A2に14、B2に15、C2に16、D2に17、E2に200、同様にA3に18、A4に22、E3に300、E4に400と、値が入っています。(この値は、その都度変わります)、そして、セルA10に=A1、B10に=B1、C10に=C1、D10に=D1、E10に=E1、・・・・      D13に=D4,E13に=E4と入力しています。 このとき、10,11,12,13行のE10,E11,E12,E13の値を優先キーとして、降順でセルA20~に10~13行の値だけを自動的に移したいのですが。 今度は分かってもらえましたかね?・・・・・・・ よろしくお願いします。

  • EXCEL関数について

    いつもお世話になっております。 突然ですみませんが、ご教授ください。 A1に収入、B1に支出、C1に残高、D1に繰越残高とします。 C1に=D1+A1-B1 を入れたいのですが、この時に A1とB1が空白の場合、C1も空白になるような式を入れたいのですが、 C1 =IF(OR(A1="",B1=""),"",D1+A1-B1 と入れても偽の場合の式がVALUEになってしまいます。 どういった式を入力すれば良いか教えてください。 宜しくお願いいたします。

  • エクセルの抽出された最小値に数字を足す方法について

    質問です。 B1に  =MAX(42*A1-1050,0) C1に  =21*A1+980 と入れA1にはそのつど値を入れB1の値がC1より大きくなったり、小さくなったりするのですが、 B1、C1の値の小さい方をそのつどD1に表示するようにしたいのですがどのようにすれば宜しいでしょうか?

  • エクセルで A1に1940 B1に4 C1に13 A2に1940

    エクセルで A1に1940 B1に4 C1に13 A2に1940 B2に11 C2に2 という風に表示されているのを D1に 19400413 D2に 19401102 と表示させたいのですが、書式設定やCONCATENATEをつかってもうまく出来ません。 どのようにすれば、表示できるのか教えていただけませんでしょうか?

  • エクセルで曜日を自動的に表示させたいです。

    よろしくお願いします。ややこしい質問ですが皆様の お知恵をお貸しいただきたいです。 1.A1に「2007」←年 2.B1に「1」←月 3.C1に「11」←日 以上のように入力したときにD1に曜日を表示させたいと思っています。表示形式は「月曜日」といった感じにしたいです。 どのような数式にしたらよろしいのでしょうか? また、D2・D3に指定した日の翌日、二日後の曜日を 表示させるときにD2・D3に入力すべき数式を教えていただきたいです。 さらに、可能であればD1に1月30日の曜日を表示させたとき D3は2月1日の曜日を表示すると思いますが、 月が変わるときは「表示しない」としたいです。 わがままな条件ばかりを羅列してしまいましたが、よろしくお願いします。 自分自身数式に関して無知な人間なので質問の難易度が解っていません、難しすぎたり簡単すぎたら申し訳ありません。