• ベストアンサー

エクセルのセル、非表示

エクセルで表を作っています。こういった表を作ったときBの平均値のセルに「#DIV/0」と表示されてしまいます。   あ い う え お 平均 A 1 2 2 2 1  1.6 B            #DIV/0 C 2 2 2 2 2  2.0  そこで質問なのですが、Bの数値を何も入れなかったとき、この「#DIV/0」を非表示にすることはできますか。何もないときは、何も表示無しにしたいのです。  よろしくお願いします。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.6

こんにちは。maruru01です。 =IF(COUNT(B2:F2),AVERAGE(B2:F2),"") です。 No.3の方が用いている、COUNTA関数は、範囲内で何かが入力されている個数を数えます。 この場合の「何か」には文字列も含まれます。 例えば、Bの行のどこかに、 「a」「あ」 などの文字列(数値以外)が入ると、No.3の方の数式では、別のエラーが出ます。 したがって、厳密には、COUNT関数(これは、範囲内の"数値のみ"の個数を数えます)にすべきでしょう。 もちろん、範囲には数値以外は絶対に入力しないということなら、COUNTAでもいいですが。 数式が長くなるわけでもない(逆に短くなる)ので、COUNT関数を使用するのが無難だと思います。

betterdays
質問者

お礼

何も入れないという条件を考えていたのこちらの確かめも何も入れずに考えていました。もちろん、文字を入れることも考えていませんでしたので文字を入れたときにエラーが発生するのですね。  maruru01さんの方法も確認しました。みごとに非表示になりますね。しかも空白セルに数値を入れると入れた分だけの平均を出してくれます。このような解釈でよろしいでしょうか。  いろいろな関数があり、いろいろな方法があることが今回よくわかりました。マニュアルを読んでいるだけでは、どうしてもわかりませんでした。  本当にありがとうございました。 

その他の回答 (6)

  • sakenomo
  • ベストアンサー率52% (35/67)
回答No.7

#3です。回答ではないのですが、#6さんへ。 考えが深いですね、さすがです。 あと、私ごときでは<>0の省略にも思い至りませんでした。勉強させていただきました。

betterdays
質問者

お礼

ベテランの方が勉強させてもらうほどこの問題は、難しいのですね。私は、みなさんの考えにただただ驚くばかりです。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.5

ブランクセルが1つでもあれば空白、全て埋まっていれば 平均値 =IF(COUNTBLANK(A2:E2)<>0,"",AVERAGE(A2:E2)) ブランクセルが5つであれば空白、1つでも埋まっていれば平均値 =IF(COUNTBLANK(A2:E2)=5,"",AVERAGE(A2:E2)) 実例ケースにおいて、データの1部欠けで意味があるかを考察して、状況に応じて使い分けるのはどうでしょう。

betterdays
質問者

お礼

imogasiさん、これまた、すばらしいアイデアをありがとうございます。状況に応じて考えてくださったのですね。実例で使っていけそうです。  みなさん、本当にありがとうございます。いろいろな方法やアイデアがわかってきます。初心者にとってうれしい限りです。

  • dejiji-
  • ベストアンサー率38% (327/858)
回答No.4

条件付書式ではいかがですか。 通常に平均値の式を入れます。エラー表示は無視してください。 完了したら、式の入ったセルを選択して、書式→条件付書式を選択。 数式を選択して、「=iserror(A1)」とし、書式のフォントを「白」に設定します。(A1とは、式の入ったセル=条件付書式を設定するセル番号です。) これで背景が白の上に白い文字だから、見えません。非表示と同じです。

betterdays
質問者

お礼

なるほど、発想を変える方法もあるのですね。文字そのものを見えなくすればいいわけですね。  それにしてもみなさん、すばらしいです。すごすぎます。こんな初心者に丁寧に教えて頂き、本当にありがとうございました。

  • sakenomo
  • ベストアンサー率52% (35/67)
回答No.3

質問例の”あ”がB1に、”A”がA2にあるとして、”平均”の下のセル(G2)に、 =IF(COUNTA(B2:F2)<>0,AVERAGE(B2:F2),"") でいかがでしょう。

betterdays
質問者

お礼

これまた、違う式ですがいいですね。いろいろなやり方があるのですね。もう感心するというか感動しています。 ありがとうございました。

  • Good-S15
  • ベストアンサー率33% (149/439)
回答No.2

こんばんは。 できますよ。 ネスト5つですね。 例:A~E列の平均式(エラーなしの場合) =IF(A4="",IF(B4="",IF(C4="",IF(D4="",IF(E4="",""),""),""),""),AVERAGE(A4:E4)) どうでしょうか?(Excel2000動作確認済み)

betterdays
質問者

お礼

これまた、できますね。式は、長いのですが動作まで確認してくださいまして本当にご丁寧にアドバイスして頂きありがとうございます。

回答No.1

=IF(ISERROR(AVERAGE(A1:A5),"",AVERAGE(A1:A5)) でどうでしょうか?

betterdays
質問者

お礼

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

関連するQ&A

  • 緊急です。エクセルの#DIV/0!表示を0にするにはどうしたらいいですか?

    会社の売り上げ表をエクセルで作成しています。 数値が入らない場合は#DIV/0!という風に表示されますが これを常に0であらわしたいのです。 式は C10(セル)/B10(セル)で、どちらかまたは両方数値が0でも #DIV/0!の表示ではなく、常に0で表示されるような式の作り方をお教えてください。 お願いします!!

  • エクセルのセル内に文字と計算結果の表示

    エクセルの1つのセル内に文字と計算結果の両方を表示させる方法を教えて下さい。 例えば、セルのA1に数値10を入れて、B1に数値5を入れてあったとします。 で、セルのC1にA1とB1の合計を「合計 15」みたいな形で、文字と計算結果の両方をC1のセル内に表示させたいのですが。 ただ合計の数字のみを表示させるなら、=SUM(A1+B1)で良いわけですが、この数値の前に”合計”という文字を入れたいのです。 宜しくお願いします。

  • エクセル2007で質問です

    エクセル2007での質問です。 早速ですが、 1~10まではA、11~20まではB、21~30まではC といった具合にそれぞれの数値を仕分けをしたいと考えています。あるセルにそれらの数値を入力すると、隣のセルにA、B、Cなどと分類が表示されるシートを作成したいのですが、同じような表を作ったことのある方などわかる方がいらっしゃれば教えていただきたく思います。 よろしくお願いします。

  • エクセル教えてください

    エクセルで縦・横セルに数値が入っている表があります。 全セルの数値から一度に同じ数値を引く方法を教えてください。 A1~A30 B1~B30 C1~C30・・・・・・ その一つ一つのセルから同じ数値を引きたいのです。 よろしくお願いします。

  • エクセル:偶数セルと奇数セルそれぞれの合計

    エクセルで作成した表で 「A2+A4+A6」 や 「B3+B5+B7」のようにそれぞれ偶数セル、奇数セルの数値の合計を表示させたいのですが、よい計算方法はありますか?それとも何十個というセルを地道に足していくしかないのでしょうか? 少ないセル数ならいいのですが、多くのセルの合計を出したいので困っています。どなたか分かりやすく教えていただけないでしょうか?お願いします。

  • エクセルのセル入力の計算式について

    エクセルのセルに入力した計算式で仮にC1セルにA1/B1という式がある場合、A1かB1のセルをDELETEで消した場合、通常C1に#DIV/0!が表示されると考えられますが、消した場合でもC1に変化が起こらない現象になっています。これは何かで保護されているのでしょうか。

  • エクセルの表示を・・・

    エクセルについてです。 例えば、A1のセルの数値(60)+B1のセルの数値(90)がC1のセルに 計算式を入れることによって、SUMで150と入りますよね。 それの単位が分なので、150分だとなるのですが、 それを○時間○分というようになるように表示することは 可能なのでしょうか? ちなみにエクセルは2000を使っています。 分で表示だと分かりにくいので、できれば○時間○分と自動的に 入るようにしたいのです。 お願いします。

  • エクセルでセル移動について

    エクセルのA1からD10の表に縦に数値を入力します。 各列によって空白のセルがあります。 A列の入力が終わればB1に、B列の入力が終わればC1に セル移動するにはどうすればいいでしょうか? (空白セルがあるため、Ctlキー+↑キーでは上手くいきません。) 教えて下さい。よろしくお願いします。  

  • エクセルの関数を使って、表示させたい!

    エクセルでの質問です。なにぶん、初心者なのでよろしくお願いします。 一覧表の横に金額表があり。C列に最安値を表示したいと思い、 関数「MIN」を使って表示さています。 会社名をB列のセルに関数を使って表示させたいのですが、金額が同数値の場合、 同じセルに2つ(複数)の表示は可能でしょうか? よろしくお願いします。 例) 一覧表   A     B      C    D  1 行先  会社名   最安値 2 →あ    320 3 →い    120 4 →う     300  5 別途金額表    E    F    G   H 1  行先 会社A 会社B 会社C 2  →あ  500  500  320   3  →い  120  320  450 4  →う  300  400  300

  • 数値で示されたセルを表示させたい

    エクセルで、C1からG1の5つのセルに適当な数値が入っており、B1に1から5の数値を入れたときに、A1の箇所に、1だったらC1の、2だったらD1の、3だったらE1の、4だったらF1の、5だったらG1の数値を表示させようと思うと、どういった関数を使えば宜しいでしょうか?

専門家に質問してみよう