Googleスプレッドシート入門
関数を使う(IF,IFERROR)

Google スプレッドシートの入門解説です
最終更新日:2016-09-23

関数を使う(IF,IFERROR)

GoogleスプレッドシートでIF関数、IFERROR関数を使います、


IF関数は、処理を分岐させます、
IFERROR関数は、エラーの時の表示を変更します。

前回までに作成した以下の表の、
表示が見苦しいので、#N/Aの表示を消そうと思います。

Googleスプレッドシート 画像


このような場合、Excelでも
IFERROR関数
が良く使われます。

C2セルを選択し、F2で編集状態にして、
=VLOOKUP
=の後ろに、
iferror(
と入力して、
=iferror(VLOOKUP
とします。

Googleスプレッドシート 画像

,false)
の)の後ろに、
,""
を入力して
,false),""
とします。

Googleスプレッドシート 画像

完成した数式は、
=iferror(VLOOKUP($B2,'商品マスタ'!$A:$C,2,false),"")
Enterで入力を完了してください。

C2セルをC3セル~C11セルにコピー

Googleスプレッドシート 画像

#N/Aが消えて、すっきりしました。
D列の単価も、やり方は同様です。


この方法は良く見かけますが、ちょっと待ってください。
商品コードが未入力時に#N/Aを消すのは分かりますが、
商品コードが、間違って入力されたときは・・・

Googleスプレッドシート 画像

商品コードが未入力時と同様に、何も表示されません。
ここは、個人的な好みと言えなくもありませんが、
間違った商品コードが入力されたときは、
#N/A
のままで良いのではないでしょうか。
つまり、
商品コードが未入力の時だけ、#N/Aを消すという事です。

これには、
IF関数を使います。

C2セルの数式を、
=if($B2="","",VLOOKUP($B2,'商品マスタ'!$A:$C,2,false))
と変更してください。

Googleスプレッドシート 画像

C11セルまでコピーします。
これであれば

Googleスプレッドシート 画像

これで、
B01
という商品コードが間違っていることも分かりますし、
余計な#N/Aも表示されません。


※エラー回避について

以下は、Excelと共通の問題です。
IF関数で判断できる場合は、IFERROR関数ではなくIF関数でエラー回避しましょう。
例えば、
割り算で、#DIV/0! となる場合、IFERROR関数が使われているのを見かけますが、
これは、IF関数で分母が=0かを判定するようにしてたほうが良いです。
結果ではなく、根本問題を解決するという事です。
大量データになった場合に、その差が出てきます。




同じテーマ「Googleスプレッドシート入門」の記事

書式を設定する
計算式を入れる
関数を使う(SUM)
関数を使う(VLOOKUP)
関数を使う(IF,IFERROR)
関数一覧(Excelとの差異)
条件付き書式
入力規則
シートを保護
シートをコピー
わからない時はヘルプを見よう


新着記事NEW ・・・新着記事一覧を見る

IfステートメントとIIF関数とMax関数の速度比較|VBA技術解説(6月23日)
Withステートメントの実行速度と注意点|VBA技術解説(6月6日)
VBA+SeleniumBasicで検索順位チェッカー(改)|VBA技術解説(6月2日)
マクロでShift_JIS文字コードか判定する|VBA技術解説(6月1日)
Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(5月31日)
「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(5月21日)
VBA+SeleniumBasicで検索順位チェッカー作成|VBA技術解説(5月18日)
テーブル操作のVBAコード(ListObject)|VBA入門(5月12日)
テーブル操作の概要(ListObject)|VBA入門(5月12日)
VBAのスクレイピングを簡単楽にしてくれるSelenium|VBA技術解説(5月6日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
5.変数とデータ型(Dim)|ExcelマクロVBA入門
6.ひらがな⇔カタカナの変換|エクセル基本操作
7.繰り返し処理(For Next)|ExcelマクロVBA入門
8.マクロって何?VBAって何?|ExcelマクロVBA入門
9.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説
10.ExcelマクロVBAの基礎を学習する方法|エクセルの神髄


  • >
  • >
  • >
  • 関数を使う(IF,IFERROR)

  • このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


    記述には細心の注意をしたつもりですが、
    間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
    なお、掲載のVBAコードは自己責任で使ってください。万一データ破損等の損害が発生しても責任は負いません。






    このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
    本文下部へ