Google スプレッドシート: 基準に基づいて別のシートからデータを抽出する
Google スプレッドシートのQUERY関数を使用すると、特定の条件を満たす別のシートからデータを取得できます。
これを行うには、次の構文を使用できます。
=query( Sheet1!A1:C11 , " select * where A='Mavs' ", 1 )
この特定の例では、列 A の値がMavsと等しい行のみ、範囲A1:C11からSheet1にデータを抽出します。
注: 最後の引数1は、範囲A1:C11にヘッダー行が含まれることを指定します。
次の例は、この構文を実際に使用する方法を示しています。
例: Google スプレッドシートの基準に基づいて別のシートからデータを抽出する
まず、Google スプレッドシートの最初のシートに次のデータ セットを入力します。
ここで、 Sheet2の Team 列にある「Mavs」を含む各行を抽出するとします。
これを行うには、 Sheet2のセルA1に次の数式を入力します。
=query( Sheet1!A1:C11 , " select * where A='Mavs' ", 1 )
Enter キーを押すと、Team 列がMavsと等しいすべての行が Sheet2 に抽出されます。
Team 列がMavsに等しい 3 つの行がSheet1からSheet2まで抽出されたことに注意してください。
また、 QUERY関数で and 演算子を使用すると、複数の基準に基づいてデータを取得できることにも注意してください。
たとえば、次の構文を使用してSheet1から、 Team 列の値がMavsに等しく、 Points 列の値が20より大きいデータを抽出できます。
=query( Sheet1!A1:C11 , " select * where A='Mavs' and B>20 ", 1 )
次のスクリーンショットは、この式を実際に使用する方法を示しています。
Team 列がMavsに等しく、 Points 列が20より大きい 2 つの行がSheet1からSheet2から抽出されたことに注意してください。
追加リソース
次のチュートリアルでは、Google スプレッドシートでその他の一般的な操作を行う方法について説明します。
Excel の詳細フィルター:「次を含む」の使用方法
Excel の高度なフィルター:「次の値を含まない」の使用方法
Excel の詳細フィルター: 空ではない値を含む行を表示する