スポンサーリンク

Googleスプレッドシートでのフィルタの絞り込み方法、Excelでも使えるtextjoin関数とは?

スプレッドシートやExcelでデータの絞り込みをしたいこともあるかもしれません。膨大なデータの中から適切な数字や文字列をまとめると見やすくできますよね。Googleスプレッドシートとエクセルのフィルタ関数による範囲の絞りこみは若干異なるため、違いを知っておくのも大切です。今回は、Googleスプレッドシートにおけるフィルタを使った範囲の絞り込み方法や、Excelでも使えるtextjoin関数とは何かについてご紹介します。



◎Googleスプレッドシートでのフィルタ関数を使った範囲設定、Excelの絞り込みとの違い


スプレッドシートにおけるfilter関数とは、範囲の中で指定された条件に絞り込み、該当する行または列を返す機能を指します。エクセルにおいてはフィルタ関数ではなく、絞り込み機能やExcelシート上で絞り込み合計するSUBTOTAL関数を使用して設定していく方式ですから、まずはこの違いを押さえておきましょう。


スプレッドシートにおけるfilter関数の構文は、『=FILTER(絞り込みをする範囲,条件』です。条件が複数ある場合には、「条件」の後ろに「,」を付けてさらに条件を書き加えます。言葉だけではわかりにくいと思われますので、事例を挙げてみましょう。今回は、a~zの26個のアルファベットに数字を振り分け、スプレッドシート中から20以上の数字が書かれている記号をフィルタ関数で絞り込みました。


後程でも触れますが、該当する文字列や数字がセルごと取り出されているので、関数そのものは一箇所にしか入力していなくても、該当する記号が調べられている方向に順番に並べられていきます。縦向きにして同じ操作を行った場合には縦向きにアルファベットが出てきますので、気になる場合には試されても良いでしょう。


なお、記号と数字の間には特に関係式などは設定していませんが、45行目の●●番目の数字が該当したときに44行目の同じ●●番目の記号が選ばれています。つまりこの関数を使う場合、範囲として出す行または列の数と、条件で抜き出す行または列の数は同じなのが必要条件です。Googleスプレッドシートでのフィルタができない場合には、定めている範囲と抽出分が異なる可能性があるのでチェックしてみましょう。また、いずれの文字も半角でないと反応しないことがありますので、特にイコールや括弧が半角になっているかも見ておくと良いかもしれません。



●Googleスプレッドシート上の関数『フィルタ』に関する注意点


FILTER関数は、Googleスプレッドシート上の条件に当てはまる数字や文字列を抜き出すのには向いていますが、先程も触れたようにセルごと取り出す関係で何行または何列にもわたって表示されるのが難点です。上の図のように、右側に何もなければ問題なく該当のセルが出てきますが、特に下の図のように、該当する文字列や数字が並べられる可能性のある部分に既に何かが記入されている場合には、上書き処理がなされて非常に厄介でしょう(エラー表示が出るかもしれません)。その際の対処法として、Googleスプレッドシート上の複数のセル内容を結合する関数『TEXTJOIN』を挿入するのがおすすめです。



◎excelでも使える、textjoin関数とは?複数のセルのテキストを1つのセルに結合


TEXTJOIN関数は、複数のセルのテキストをひとつのセルに結合する機能があり、エクセルにもある関数の一つです。たとえばスプレッドシートのあるセルに『=TEXTJOIN(“”,TRUE,”Excel”,”合計”,”フィルタ”』と入力すると、「Excel合計フィルタ」と”TRUE”のあとに記入した三つの単語がつながります。また、途中に区切りを入れて項目を見やすくすることも可能です。たとえば、スプレッドシートまたはExcelのとあるセルに『=TEXTJOIN(“,”,TRUE,”エクセル”,”フィルタ”,”関数”』と入力すると、今度は「エクセル,フィルタ,関数」となります。


その仕組みを軽く説明しておきましょう。最初の「””」は、区切りに何を入れるかを指定する部分です。空欄でつまり「Excel合計フィルタ」のようにしたい場合には何も記入しなくて良いでしょう。二つ目の「”TRUE”」は、Googleスプレッドシート上の空欄のセルを無視するかを指定します。単に結合する場合にはそのまま記入しておきましょう。その後に、「”エクセル”,”フィルタ”,”関数”」のように、繋げたい文字を「””」で挟んで間に「,」を入力します。最後に「)」で閉じると完成です。



●googleスプレッドシートでのフィルタとExcelでも使えるTEXTJOIN関数の組み合わせ方


Googleスプレッドシートでは、FILTER関数で抽出した文字列に対してこのTEXTJOIN関数で処理することで、一つにまとめて表示できます。構文は、『=TEXTJOIN(“,”,TRUE,FILTER(取り出す範囲,調べる範囲とその条件』です。例『=TEXTJOIN(“,”,TRUE,FILTER(P3~AT3,P13~AT13<>””』では、Googleスプレッドシート上のP13~AT13の範囲を調べてその中で空白ではない(「””」が空白で「<>」が「≠」の意味)ものに対応する部分を(P3~AT3)より取り出し、空欄は無視して間に「,」を入れてまとめて表示する指令を出しています。結果的に、空白ではない場所のみ左側の数字「1,2,6」が一つのセルで結合されました。

GEEK JOB



◎まとめ


今回は、Googleスプレッドシートにおけるフィルタを使った範囲の絞り込み方法や、Excelでも使えるtextjoin関数とは何かについてご紹介しました。Excelでツールバーを使い絞り込みするのとは違い、スプレッドシートにおけるfilter関数とは、範囲の中で指定された条件に絞り込み、該当する行または列を返す機能を指します。該当するセルがそのまま表示される点が注意すべき部分であり、それをまとめるためにTEXTJOIN関数と組み合わせて見やすい一覧表を作成していきましょう。最後までお読みいただきありがとうございました。

コメント

タイトルとURLをコピーしました