shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【Excel】データラベルの「0」を消して見やすいグラフにする方法

Excelのグラフでデータラベルを使うと、値が「0」の場合でもラベルに「0」が表示されてしまい、ラベルを個別に削除したい場面があります。例えば、次の画像では赤い矢印で示した「0」が、グラフの見やすさを損ねています。そこで、今回はExcelグラフで「0」を非表示にする方法を紹介します。

データ要素が0の場合に、ラベルの0だけが表示されている

0が表示されている状態(改善前)

内容:

なお、確認のExcelは「Microsoft® Excel® for Microsoft 365 MSO」(バージョン2510)です。

方法1:表示形式コードで「0」を非表示にする

最も簡単な方法は、データラベルの書式設定で表示形式をカスタマイズすることです。

  1. グラフのデータラベルを右クリック → 「データラベルの書式設定」を選択
  2. 表示形式のカテゴリを「ユーザー設定」にし、「表示形式コード」に以下を入力、追加で適用

    #,##0;-#,##0;""

#,##0;-#,##0;""を設定して、0を空白にしている

「データラベルの書式設定」で「表示形式コード」の設定例

この設定で、下図のように値が0の場合は空白になります。

データ要素が0の場合にはラベルが非表示になっている

0が非表示になった状態(改善後)

方法2:セルの値を使ってカスタマイズ

もう一つの方法は、セルの値をデータラベルにリンクするやり方です。

この方法は、「ラベルの内容」に系列名なども表示したいときに有効です。

アウトプットイメージ

改善前の状態は、上記の手順に従い、表示形式コードで「0」を非表示に設定しても、データ系列の値がそのまま表示されている状態です。

ラベルに系列名が表示されている

系列名が表示されている状態(改善前)

これを次のように、値が「0」のときは、系列名も非表示にします。

データが0のとき、系列名が非表示になっている

系列名も非表示にする(改善後)
実施手順
  1. ラベル用のセルを作成し、次のような数式で「0」を空白にします。
    =IF(C5>0,$B$5&":"&C5,"")
  2. グラフのデータラベルを右クリック → 「データラベルの書式設定」-「セルの値」選択し、ラベル用セルを指定します。

    「セルの値」にチェックを入れている

    「データラベルの書式設定」で「セルの値」の設定例

    「範囲の選択」は次のように設定しています。

    「=セルの値!$C$7:$D$7」と入力している

    ラベルに表示する「セルの値」の設定例

方法3:元の表で「0」の場合は数式でエラーに置き換える方法

元の表を編集できる場合、「0」を数式でエラーに置き換える方法も有効です。

次のように、値が「0」の場合は #N/A を返す数式を使います。

=IF(C3=0,NA(),C3)

Excelでは #N/A はグラフに表示されないため、ラベルも棒も消えてスッキリします。

なお、数式で「 =IF(C3=0,””,C3) 」 のように空白文字を返すようにした場合、グラフでは「0」として扱われるため、非表示にはなりません。必ず #N/A を返すようにします。

 NA()を使用して「0」の場合にエラーを発生

#N/A を返す数式で、ラベルを非表示(D列の値のみ)

ユーザー定義書式の活用事例

ユーザー定義書式を活用したその他の事例です。

shikumika.org

数式でエラーを発生させるメリット

NA() 関数は、意図的に #N/A エラーを返すための関数です。これは「値が存在しない」「該当するデータがない」ことを示すために利用できます。

これにより、#N/A エラーがあるセルは折れ線グラフなどでプロットされないというメリットがあります。

shikumika.org

 

以上、Excelのグラフでデータラベルの「0」を消して見やすいグラフにする方法でした。