Excelで空白処理という作業があるのを知っていますか?Excelで作った書類を印刷しようとするときに、エラー表示が印刷されてしまうことで提出することが出来ないという悩みがあると思います。今回ご紹介する空白処理は、「#VALUE!」エラーや「#N/A」エラーなど意図せずセルに出力されてしまったエラー文を、空白にして表示しないように処理することです。
この記事ではExcelで「#VALUE!」エラーが発生してしまう時の空白処理についてわかりやすく解説していきます。毎日の業務で使える実用的な内容になっていますので、是非ご活用下さい!
目次
Excelの空白処理とは
Excelで意図せず起こってしまうエラーメッセージを空白に置き換える処理のことです。明細書の印刷時に「#VALUE!」や「#N/A」などと書かれていたら、Excelでエラーが発生していることが丸出しになっている恥ずかしい資料になってしまいます。まずはどういったケースで空白処理が行われるのかを確認していきましょう。
例えば下記の画像のように単価と個数を掛け算して小計を求めたいという場合です。5行目、6行目は単価も個数もセルに値が入っているので、正しく計算が行われています。
D列はD5に入力した「=B5*C5」という計算式がオートフィルでコピーされている状態です。
C列の7行目と8行目は個数のセルに値が入っていませんね(C7,C8)。残念ながらこの状態では「単価*個数」という掛け算の数式が正常に働かず、「¥VALUE!」エラーが出力されてしまいます。
このエラー出力を解消させる作業が空白処理です。エラー表示のまま放置してしまうと、エラー表示が印刷した書類にも反映されてしまいます。また、別の方がこのExcelファイルを使用する場合に、あなたが先んじて空白処理を施しておくと、別の方は同じ問題に直面しなくて済みます。
Excelにおける関数の基本的な作成方法
この記事を読んでくださっている方の中には、関数を使ったことがない方もいらっしゃることでしょう。関数の基本的な使い方をまずは解説していきたいと思います。
関数を使い慣れているという方はこのパートを読み飛ばして頂いても構いません!
①セルに直接入力する方法
1つ目の方法は、セルに直接関数の数式を入力する方法です。
関数が頭に入っている方や、直接入力する方が早いという方はこちらの方法がおすすめです。
②関数ダイアログボックスから作成する方法
2つ目の方法は、数式バーにある「関数の挿入」ボタンや「オートSUM」→「その他の関数」で関数を挿入する方法です。
関数を全て記憶していない方や、こちらのやり方に慣れていて時短に繋がるという方は2つ目の方法で関数を組んでいきましょう。
関数での文字入力方法と、空白の入力方法
関数を作成する際の注意点として
①数式内は全て半角英数字
②区切る際が,(カンマ)
③要素は””で囲む
という点が挙げられます。
エラーが出る際には、この3つの点にも注意して見直してください。
Excel IF関数で空白処理を行おう
「意図せず表示されたエラーを隠したい」、「エラー表示も一緒に印刷されてしまうから、空白にしたい」そんな時はIF文を使って処理するのがおすすめです。条件に一致した場合と不一致だった場合のそれぞれで、出力する内容を変えることができるので汎用性も高く、条件も様々なものを設定できます。
IF文を使えば「#VALUE!」エラーをはじめ「#N/A」エラーなどの様々なエラーに対し、正常な処理を行ったら結果を出力しセルを埋め、異常(セルが空白/情報が無い)な処理であれば空白を出力するといった条件分岐を設定することができます。
Excel IF関数の意味
空白処理をご紹介する前に、まずはIF関数の解説をしていきます。
IF関数とは
「この条件に、合致していればこれを出力する、そうでなければこれを出力する」
という関数です。
=IF(論理式,値が真の場合,値が偽の場合)
という構成になっています。
“論理式”とは「条件を指定する」部分であり、”値が真の場合”は「条件に合致していた場合に出力したものを指定」する部分で、”値が偽の場合”は「条件に合わなかった場合に出力したいものを指定」する部分です。
Excel IF関数の作成方法
①ダイアログボックスからIF関数を選択して作成
↑セルを選択して(この場合はA1)、上部にある「関数の挿入」ボタンをクリック。
↑すると、関数が表示されるので、IF関数を選択する。
↑論理式、真の場合、偽の場合などの条件指定用のダイアログボックスが表示される。今回は論理式に「B1=””」、真の場合に「””」、偽の場合に「B1*C1」を入力する
意味は「B1が空白ならば」、真(空白)の場合「空白を出力する」、偽(空白では無い)の場合「B1*C1の結果を出力する」となる。
↑A列をオートフィルを使用して、関数で埋める。その後、B列とC列に適宜数字を打ち込んでいくと、このようになっていく。
②指定セルに直接IF関数を作成
↑これはIF関数を直接指定セルに入力した場合です。
意味は同じで、論理式に「B1=””」、真の場合に「””」、偽の場合に「B1*C1」を入力する
意味は「B1が空白ならば」、真(空白)の場合「空白を出力する」、偽(空白では無い)の場合「B1*C1の結果を出力する」となる。
ある程度慣れてくるとスラスラとスムーズに入力出来るので、一度試してみてください。
Excel IF関数の実用例
では、いよいよIF関数による空白処理を行っていきます。
処理としてはものすごく簡単で、「個数が空白だったら計にも空白を、空白ではない場合には単価と個数を掛け算した数を出力する」という記述です。この内容をIF関数で記述すると以下のようになります。
=IF(C7=””,””,B7*C7)
「C7の個数が空白ならば,空白を出力,空白ではないならば単価(B7)と個数(C7)を掛け算した数を出力する」
空白というのはダブルクォーテーションマーク(”)を2つ記述するだけで表現することができます。本当に空白を打ち込む必要はありません。空白以外の参照先を全てセルにしてあげることで、オートフィルにも対応しています。IF関数の記述が終わったらEnterキーを押してオートフィルを実行してあげればD8の豚肉の”計”も空白処理を行うことができます。
Excel IF関数 空白処理の実用例
実際の業務ではどのように空白処理が行われているのでしょうか?D列の小計を求める掛け算はもちろん、小計を全て足した合計にも空白処理を行います。処理としては単純で、「小計を全て足した数が0であれば空白を、0じゃなかったら小計を全て足した数を出力する」という処理を書きます。IF関数の数式は以下のようになります。
=IF(SUM(D5:D8)=0,””,SUM(D5:D8))
Enterキーを押すと、ちゃんと合計値が出力されていますね。豚肉の小計が空白ですが、0として加算されています。
ちなみにD5〜D9セルまで空白処理を実施済みですので、全ての個数を消すとそれぞれの小計、及び合計が空白になります。
IF関数は単なる四則演算からSUM関数のような関数の結果を条件に設定できます。空白処理を行う際にぴったりの関数ですのでぜひ利用してみましょう。
Excel IF関数で空白ではないという条件を指定できる?
先ほどIF関数で「個数が空白だったら小計も空白にする」という処理を記述しました。数式は=IF(C7=””,””,B7*C7)と書きましたが、空白を出力する処理が先にくるので見る人によっては違和感を感じるかもしれません。
IF関数の引数に指定する条件を「空白じゃなかったら」という風に記述することで、掛け算の結果を出力する処理が先にくるので、意図を読み取りやすい数式になります。以下の数式を見てください。
=IF(C5<>””,B5*C5,””)
上記の数式は「もしC5セルが空白じゃなかったら,B5とC5を掛け算した結果を出力,違ったら空白を出力」という意味になります。イコール(=)かノットイコール(<>)かの「違いがありますね。
条件を「空白だったら」「空白じゃなかったら」のどちらにするかはお好みですので、理解しやすい方を使ってみてください。
Excel IF関数以外の関数
ここからは、IF関数以外の関数で空白処理に使える関数をご紹介していきます。
Excel ISBLANK関数を組み合わせてみる
ExcelにはISBLANK(イズブランク)関数という、指定したセルが空白かどうか調べる関数があります。
=ISBLANK(C5)という風にかっこの中に任意のセルを指定することで、指定したセルが空白なのか調べることができます。もし空白であれば「TRUE」、空白でなければ「FALSE」が表示されます。これもどこか1つのセルに入力してしまえばオートフィルで他のセルにも簡単に埋められます。
上記の画像では「豚肉」の個数(C8セル)が空白なのでTRUEが表示されました。
これまで紹介してきたIF関数での空白処理の条件は「C5=””」という見栄えの悪い条件でした。ここでISBLANK関数を用いて、ISBLANK(C5)と記述することで可読性の高い条件式を記入することができます。
IF関数の条件式を、=IF(ISBLANK(C5),””,B5*C5)と設定すると以下のような結果になります。ISBLANK(C5)は「C5が空白だったら」という意味になります。
5行目から7行目までは個数のセルに値が入っているので、FALSE(条件に一致しなかった時の処理)が読み込まれます。しかし8行目の豚肉の個数は空白なので、ISBLANK関数がTRUEを返し、条件に一致した時の処理が実行されるという仕組みになっています。
ISBLANK関数を使って「ISBLANK(C5)」と記述すればExcelシートの管理者が自分から他の人に変わった時に、「C5=””」という処理よりも意図がわかりやすいものになります。
&記述を活用する
またExcelで使える空白処理の中で意外と知られていないのが「&記述」です。「もし〇〇が空白ならこのセルも空白にする」という処理を行うことができます。なんと「=C7&””」と記述するだけで空白処理が実行されるのです。とても短く単純ですよね。
ただ「&記述」は指定したセルと同じセル内容をコピーするだけなので、本来、小計のセルに入るべき処理を書けなくなってしまいます。もしも個数セルに値が入っていたら、ただその個数を”計”のセルにコピーするだけの処理になってしまうのです。ですので状況に応じてIF関数を用いた空白処理と使い分ける必要があります
式を入力していても、空白セルとして認識させたい場合の対処法
数式の結果が空白の場合に、「空白のセル」として認識させたい方もいらっしゃると思います。
対処法①「=Concatenate(○○,○○)」と入力すると空白が返ります(出力されます)。
対処法②「Countblank()関数」または「Counta()関数」を併用すると、空白セルとしてカウントされます。
複数セルでの空白処理の実行方法
エクセルで複数セルにまたがる空白を効率的に処理するには、COUNTBLANK
関数を用いて空白セルの数を確認し、その後 IF
関数を使用して特定の値で置換します。例えば、全ての空白セルに「データなし」と表示させる場合、IF(ISBLANK(A1),"データなし",A1)
のように式を設定します。
エクセルでグラフ作成時の空白処理のコツ
データの空白をグラフに表示させないためには、グラフのデータ範囲内で IF
関数を使用し、空白セルに NA()
関数を設定することが有効です。これにより、グラフ上で空白セルがグラフに影響を与えずにスキップされます。
複数セルでの空白処理の実行方法
エクセルで複数セルにまたがる空白を効率的に処理するには、COUNTBLANK
関数を用いて空白セルの数を確認し、その後 IF
関数を使用して特定の値で置換します。例えば、全ての空白セルに「データなし」と表示させる場合、IF(ISBLANK(A1),"データなし",A1)
のように式を設定します。
エクセルでグラフ作成時の空白処理のコツ
データの空白をグラフに表示させないためには、グラフのデータ範囲内で IF
関数を使用し、空白セルに NA()
関数を設定することが有効です。これにより、グラフ上で空白セルがグラフに影響を与えずにスキップされます。
VLOOKUP関数を使用した空白処理の解説
VLOOKUP
関数を使用する際に、参照先の値が空白の場合にエラーを防ぐには、IFERROR
関数を併用します。例えば、IFERROR(VLOOKUP(A1, B1:C10, 2, FALSE),"空白")
とすることで、見つからない場合は「空白」と表示されます。
条件に応じた空白処理の自動化
複数の条件を組み合わせて空白処理を行うには、IF
関数と AND
関数を組み合わせます。例として、A列が空白でかつB列が特定の値である場合にC列に値を自動入力する場合、IF(AND(ISBLANK(A1), B1="条件"), "値を入力", "")
と設定します。
数値データの空白処理技術
数値データでの空白処理には、SUMIF
や AVERAGEIF
関数を使用することが効果的です。これらの関数を使って条件に合致するデータのみを合計や平均計算に含めることで、空白データの影響を排除します。
エクセル関数を利用したエラー回避のための空白処理
空白セルが原因で発生するエラーを避けるためには、IF
と ISBLANK
を組み合わせることで、空白時に違う処理を行うよう設定します。例えば、計算式で空白セルを避けたい場合、IF(ISBLANK(A1), 0, A1 + B1)
とすることで、A1が空白の場合に0を使用します。
まとめ:Excelの空白処理を活用していこう
いかがだったでしょうか?Excelでは意図しないエラーや”0”を非表示にするために「空白処理」をすることが可能です。空白処理によって印刷時、表のエラー文までもが印刷されてしまうといった事象を防ぐことができます。今回のように、値が入っていない空白のセルを計算に使ってしまった場合に出てしまうエラーは、主にIF関数を用いることで空白処理が可能です。「もし条件と一致したら空白を出力する」という処理を書くことで、エラーメッセージを表示させず、空白に置き換えることができます。またISBLANK関数を併用することで、スッキリとした可読性の高いIF関数の数式を設定できるので、ぜひ挑戦してみてください。