IFERRORとIFNAの違い

どちらも「エラーのときに別の値を出す」関数ですが、受け止める範囲が違います。

どちらを使うか

検索の結果を包むなら IFNA。「見つからないのは想定内、それ以外のエラーは直すべき不具合」と分けられます。IFERROR は、エラーの種類を問わず隠してよいと分かっているときだけ使います。

違うところ(4つ)

見るところIFERRORIFNA
受け止めるエラー すべて(#N/A #VALUE! #REF! #DIV/0! #NUM! #NAME? #NULL!) #N/A だけ
IFERROR は範囲が広すぎて、不具合まで隠す
式を間違えたとき 間違いが隠れる。「空欄」に見えて原因が分からない そのままエラーが出るので、気づける
#NAME?(関数名の打ち間違い)が隠れるのがいちばん困る
参照を消したとき #REF! が隠れる #REF! は通る
行や列を消したあとに気づけるかどうかの差
使える版 Excel 2007 以降 Excel 2013 以降
どちらも古い環境では無い

気をつけるところ

「エラーが出たからとりあえず IFERROR で包む」をやめると、表が壊れていることに早く気づけます。XLOOKUP なら4つめの引数で「見つからないとき」を書けるので、包む必要すらありません。

それぞれのページ