まりふのひと

Excel でグラフが無視する値は#N/A

 下図は朝晩の血圧をExcel2021 に入力しグラフにしたもの。

  • 血圧は2回測り Excel に入力、その平均値をグラフにしている
  • 平均値は Average関数を使っているので、例えば夜の血圧を測り忘れた場合は #DIV/0!(0で割った)になってしまう。
  • このままグラフにすると 0 と見なされ面白くないので‥‥ VBAでエラーとなっているセルをクリアしていた
ChatGPTに尋ねた
  • You1
     Excelでグラフが無視する値を入力するには
  • ChatGPT1
     Excelでグラフが特定のセルの値を無視するようにするには、該当するセルに #N/A を入力します。#N/A はエラーの一種で、Excelのグラフはこれを無視して描画します。


  • You2
     Excel で計算式がエラーになった時#N/Aにするには
  • ChatGPT2
     Excelワークシート上で計算式がエラーになった場合に#N/Aにするには、IFERROR関数を使用する方法があります。IFERROR関数は、指定した計算式がエラーの場合に代替の値を返します。
    例えば、セルA1にある計算式がエラーになった場合に#N/Aにしたい場合、以下のようにIFERROR関数を使うことができます。

これを受けて下記のように変更した

  • 旧計算式:=AVERAGE(C6:D6)
  • 改計算式:=IFERROR(AVERAGE(C6:D6),NA())

これによりセル C6:D6 が空の場合 #NA が表示され、VBAでクリアした結果と同じグラフが描けたぁ~~~

頻尿記録を作っていて分かったこと

 頻尿記録は最高10回までのデータを持っているが、10回目に時刻が入ってのはこれまで1回だけで殆どスペースである。計算式は下記

  • 旧計算式:=IF(C4="","",IF(C4<0.5,C4+1,C4))
    • 未入力ならば未入力のまま、そうでなく 12時未満(<0.5)であれば24時間(1.0)を加える。
    • これでは未入力のセルは未入力(””)になるが、計算式が入っているので、グラフ上は 0 になってしまう。

そこで

  • 改計算式:=IF(C4="",#N/A,IF(C4<0.5,C4+1,C4))

とすることで未入力のセルは #N/A になることも解った。
 これによりグラフデータ上には #N/Aが入るが、グラフ上は無視された。