【スプレッドシート】QUERY関数で空白行を抽出・除外する方法
本記事ではスプレッドシートのQUERY関数で空白行を除外・抽出する方法をそれぞれ解説していきます。
QUERY関数についてこちらの記事でも解説していますので、基本的な使い方がわからない方はあわせてご覧ください。
QUERY関数で空白行を除外する方法
それでは実際にサンプルを使いながら、空白行を除外・抽出する方法を解説していきます。
まずは、空白行を除外してデータを引っ張る方法です。
2種類の方法があるのでそれぞれ解説していきます。
方法①「!=」を使う
1つ目の方法は「!=(ノットイコール)」を使う方法です。
「!= ‘’」とすることで空白以外という意味になり、where句の条件に指定することで空白行を除外することができます。
=QUERY(B2:D12,”where C != ””,1)
C列の「性別」が空白以外の行を取得できていますね。
方法②「is not null」を使う【推奨】
2つ目の方法が「is not null」を使う方法です。
=QUERY(B2:D12,”where C is not null”,1)
方法①と同じ結果になりましたね。
空白行だけを抽出する方法
続いて空白行だけを抽出する方法です。
空白行を除外した時と同じく、2種類の方法があります。
方法①「=」を使う
1つ目の方法は「=(イコール)」を使う方法です。
以下のように指定します。
=QUERY(B2:D12,”where C =””,1)
C列が空白の3行だけを取得することができました。
方法②「is null」を使う【推奨】
2つ目が「is null」を使う方法です。
空白を除外した時の「is not null」から「not」だけを抜いた状態になります。
=QUERY(B2:D12,”where C is null”,1)
「=」を使った時と同じ行が取得できました。
空白行を除外・抽出するなら「is not null」「is null」がおすすめ
それぞれ2種類の方法をご紹介しましたが、基本的には「is not null」「is null」を使うことをおすすめします。
その理由は、参照したい列が数値の場合「!=」「=」だと正しく取得できないためです。
数値の場合は「!=」「=」が機能しない
D列の「点数」が空白の行を「!=」を使って除外してみましょう。
=QUERY(B2:D12,”where D != ””,1)
「!=」では1件も取得できませんでした。
では、条件を「is not null」に変更してみます。
=QUERY(B2:D12,”where D is not null”,1)
正しく取得できましたね。
「is not null」「is null」を使えば、参照列が数値・文字列関係なく除外・抽出できます。
意図しない結果にならないように、空白行を除外・抽出する際は「is not null」か「is null」を使うと良いでしょう。
まとめ
今回はスプレッドシートのQUERY関数で空白行を除外・抽出する方法をご紹介しました。
やり方は2種類ありますが、正しい結果を取得するために「is not null」「is null」を使うことをおすすめします。
QUERY関数の使い方
ー | クエリ | 解説 |
---|---|---|
基礎 | select | 抽出する列を指定する |
基礎 | where | 抽出する条件を指定する |
基礎 | order by | 抽出するデータの並び替えを行う |
基礎 | group by | 抽出する列のデータ集計を行う |
基礎 | label | 抽出するデータの見出しを変更する |
応用 | ー | IMPORTRANGE関数と組み合わせて別シートを参照する方法 |
応用 | ー | 複数の範囲・シートを結合させる方法 |
応用 | where | 空白行だけを抽出・除外する方法 |
応用 | where | 複数の条件を指定する方法 |
応用 | where | 条件指定をセル参照にする方法 |
応用 | where | 条件指定に日付を使う方法 |