Home 学習室 Excel練習場 初級問10: ゼロを非表示に
初級問10: ゼロを非表示に 印刷 Eメール

問題

請求書の一部分

請求書を作りました。上図はその明細部分です。
オーソドックスに小計の欄(F列)に単価(D列)×注文数(E列)を計算する数式をセットしました。(上図赤枠内)

たまたま請求書に記載する品物が4種類しかないので、セル範囲F6:F9には計算式に基づいて0が表示されてしまいます。

小計の欄に「0」が表示されるのは美しくないので、該当商品がない小計欄には「0」を表示したくありません。

該当商品がない小計欄の数式を削除してしまうと、請求する品物を追加したときに再度計算式をセットするハメになるので、計算式を削除せずに該当商品がない小計欄に「0」を表示しないようにしたいと思います。

さてどのようにしたらよいでしょうか?

download.gif 問題のダウンロード(zip圧縮)

コメントとヒント

方法は色々あると思います。方法が思い浮かんだら、その他の方法についても検討してみてください。
模範解答では3通りの方法を解説したいと思います。

シート上の0の値を非表示にする

シートの設定を変えることで、0の値を非表示にすることができます。

「ツール」メニューから「オプション」を選んでクリックし、「全般」タブを表示します。 続いて「全般」タブのウィンドウオプションから「ゼロ値」のチェックを外します。
「ツール」メニュー&arr; 「オプション...」
「ゼロ値」のチェックを外す

以上で、現在のシート上にあるすべての0の値が表示されなくなります。

この方法は簡単ですが、小計欄以外にある0のセルも非表示になってしまいます。

IF関数を用いて0の場合はデータを空文字にする

『「単価×注文数」が0ならば空文字、そうでなければ「単価×注文数」』を求めるようにIF関数を使うという方法もあります。
IF関数を使って0の場合は空文字に置き換える

この方法をとれば、先の「シート上の0の値を非表示にする」とは異なり、小計欄以外のセルの0が非表示になってしまうことはありません。

ただし、小計欄の結果を用いてさらに別の数値計算を行う場合は注意が必要です。空文字("")は「文字」としての扱いなので、行う計算によってはエラーが生じます。
エラーが起こる例: 文字×数値を行ったため、Valueエラーが起こる。

表示形式を編集して0の場合は数値が表示されないようにする

セルの表示形式を編集して行う方法があります。

小計欄(セル範囲G3:G9)を選択して、「書式」メニュー、「セル...」の順にクリックします。
小計欄の「セルの書式」を表示する

「表示形式」タブで桁区切り設定になっていることを確認し、「分類」から「ユーザー設定」をクリックします。
現在の表示形式(桁区切り)の状態を確認して「ユーザー定義」を選択

「ユーザー定義」をクリックすると、「種類」欄に現在の表示形式(桁区切り)の書式コードが表示されます。この書式コードを直接編集することで、独自の表示形式を作成することができます。

桁区切りの設定は「#,##0; [赤]-#,##0」となっています。(下図左側)
「;」の前の部分(#,##0)が『セルの値が正である場合の表示形式』、「;」の後ろの部分([赤]-#,##0)が『セルの値が負である場合の表示形式』を示しています。

これに続けて「;」を入力すると、さらにその後ろに入力した記述は『セルの値が0である場合の表示形式』となります。『セルの値が0である場合の表示形式』として「#」(数値の有効桁1ケタで表示)をセットします。
表示形式を編集

以上で「セルの値が0の場合は数値の有効桁1ケタで表示」するという設定に基づいて、数値が0の場合(有効桁0桁なので)何も表示されなくなります。

この方法は先ほどの2つの方法のような欠点がないので、オススメです。

説明では「#,##0; [赤]-#,##0」の後ろに「;#」を付けましたが、最後の#はなくても構いません。つまり、「#,##0; [赤]-#,##0」の後ろに「;」を付けるだけでもOKです。

ここでは3通りの方法を紹介しましたが、「条件付き書式を使って0の場合は文字の色を白くする」「ユーザー定義書式の条件分岐の書き方を使う」など、いろいろ方法が考えられます。

 

コメントを追加


セキュリティコード
再読込み