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スプレッドシートに計算式をいれます、スプレッドシートは表計算シートですから、計算式を入れるのは基本中の基本です。Excelとほとんど同じ操作ですが、一応の説明をしておきます。金額のF列に、単価(D列)×数量(E列) の計算式を入れてみましょう。
関数を使う(SUM)
Googleスプレッドシートで関数を使います、関数の使い方次第で、スプレッドシートが格段に便利になります。前回までに作成した以下の表の、F12セルに合計を入れてみましょう。合計する関数は SUM関数 です、Excelと同じです。
関数を使う(VLOOKUP)
GoogleスプレッドシートでVLOOKUP関数を使います、VLOOKUP関数は、スプレッドシートにおいて、絶対必須の関数です。前回までに作成した以下の表の、C列の商品名、D列の単価を、別シートから取得してみましょう。商品マスタのシートを追加します。
関数を使う(IF,IFERROR)
関数一覧(Excelとの差異)
Googleスプレッドシートにあって、Excelにない関数、Excelにあって、Googleスプレッドシートにない関数、これらの内、代表的なものを記載します。決してすべてではありません。バージョンとともに関数も増えていきますので、現時点で、知っておいた方が良い・便利・良く使う と判断した関数を記載しました。
条件付き書式
Googleスプレッドシートで条件付き書式を設定します、条件付き書式は、条件によってセルの書式を変更出来る機能です。・入力間違いの防止 ・特定のセルを目立たせる これらの目的で使われる機能です。前回までに作成した、以下の表で、商品コードが入っていて、数量が未入力の時 E列の数量のセルに色を付けてみましょう。
入力規則
Googleスプレッドシートで入力規則を設定します、入力規則は、間違った入力をさせないために、セルに入力できる値を制限する機能です。以下の表に、B列の商品コードには、「商品マスタ」の商品コードをリスト表示 E列の数量には、0~100の数値 このように入力規則を設定します。
シートを保護
Googleスプレッドシートでシートを保護します、関数をいれたり、条件付き書式、入力規則を設定しても、間違った操作で消してしまっては、あまりにも悲しい。シートを保護して、入力するセル以外は変更できないようにしておきましょう。その為の機能が、シート保護です。
シートをコピー
Googleスプレッドシートでシートをコピーします、同一ブック(同じスプレッドシート)内にコピーする場合と、別ブック(別のスプレッドシート)にコピーする場合があります。特に、シートをコピーして新規ブックを作成したい場合は、Excelに比べて少々面倒です。
わからない時はヘルプを見よう
わからない事が出てきたら、まず最初にGoogleスプレッドシートヘルプを見ましょう、非常に多くの有益な情報が掲載されています。目的の情報が見つからなければ、次はもちろんググってください。下では、ヘルプを使う手順を載せていますが、その手順さえもショートカットしたい人向けに Googleドキュメントエディタヘルプセンター Googleスプレッドシートの使い方…
他のスプレッドシートからインポート(IMPORTRANGE)
Googleスプレッドシートで他のスプレッドシート(他のブック)から、データをインポートしして使用します、スプレッドシートでは、Excelのような単純な参照は、他のブックに対しては出来ません。以下の二つのスプレッドシートを使います。部署別集計に、売上明細を部署別に集計します。


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

COUNTIF関数の結果は?(ツイッターお題)|エクセル雑感(5月30日)
エクセル&VBA オンライン講座|エクセル セミナー(5月29日)
アルファベットの26進(ツイッターお題)|エクセル雑感(5月19日)
VBAが消えてしまった!マクロが壊れて動かない!|エクセル雑感(5月8日)
時間に関する関数の扱い方(ツイッター投稿)|エクセル雑感(5月6日)
文字列のセルだけ結合(ツイッターのお題)|エクセル雑感(5月5日)
表示形式.言語設定|エクセル入門(5月1日)
GoogleスプレッドシートをExcelにインポートする|VBAサンプル集(4月28日)
ツイッターのお題「CSV編集」|エクセル雑感(4月25日)
プログレスバーを自作する|ユーザーフォーム入門(4月18日)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.とにかく書いてみよう(Sub,End Sub)|VBA入門
10.マクロはどこに書くの(VBEの起動)|VBA入門




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


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



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