Google スプレッドシートには、効果的なデータ分析に役立つさまざまな強力な関数が用意されており、その 1 つが INDEX 関数です。INDEX 関数を使用すると、指定した行と列番号に基づいて、特定のデータ範囲から特定の値を取得できます。
この関数は、データを動的に抽出したり、特定の条件や基準に基づいて抽出したりする必要がある場合に特に便利です。そこで、Google スプレッドシートで INDEX 関数を効果的に使用する方法を説明します。
Google スプレッドシートの INDEX 関数の構文
Google スプレッドシートの INDEX 関数の構文は次のとおりです。
=INDEX(range, row, column)
この関数は 3 つの引数を受け取りますが、最後の引数は省略可能です。
- range: データを取得するセルの範囲です。1 列、複数の行、または行と列の組み合わせにすることができます。
- row: データを抽出する範囲内の行番号を指定します。
- column: データ範囲内の列番号を示します。省略した場合、INDEX 関数はrow_numで指定された行全体を返します。
Google スプレッドシートで INDEX 関数を使用する方法
Google スプレッドシートの INDEX 関数のしくみを理解するために、いくつかの例を紹介します。
範囲からのデータの取得
A、B、C 列にデータセットがあり、A 列には製品のリスト、B 列には対応する価格、C 列には販売数量が含まれているとします。特定の製品の総売上を取得したいとします。
=INDEX(B2:B7, MATCH("Avocado",A2:A7,0)) * INDEX(C2:C7, MATCH("Avocado", A2:A7,0))
この式は、A 列で製品Avocadoを検索し、B 列から対応する価格と C 列から数量を取得します。次に、これらの値を掛け合わせて、製品Avocadoの総売上を計算します。
条件付きの INDEX 関数の使用
INDEX 関数を使用すると、特定の条件や基準に基づいて、範囲から特定のデータを抽出できます。INDEX 関数に条件を使用するには、INDEX 関数と MATCH 関数、AND/OR 関数、Google スプレッドシートの IF 関数を組み合わせることができます。
従業員名 (A 列)、部門 (B 列)、給与 (C 列) の列がある従業員データの表があるとします。名前と部門に基づいて特定の従業員の給与を取得したいとします。
=INDEX(C2:C7, MATCH("Marcus"&"Sales", A2:A7&B2:B7, 0))
この式は、従業員名Marcusと部門Salesの組み合わせを検索し、それらをMarcusSalesに連結します。次に、A 列と B 列の従業員名と部門の連結値内でこの連結値を検索します。一致が見つかると、INDEX 関数は C 列から対応する給与値を取得します。
動的範囲での INDEX 関数の使用
INDEX 関数を動的範囲で使用すると、データが変更されると自動的に調整される式を作成できます。たとえば、A 列に日付、B 列に対応する売上値がある売上データの表があるとします。範囲内の最新の日付の売上値を取得したいとします。
=INDEX(B2:B7, MATCH(MAX(A2:A7), A2:A7, 0))
この式では、MAX 関数を使用して A 列の最大値 (つまり、最新の日付) を見つけます。MATCH 関数は、A 列内の値の位置を見つけます。最後に、INDEX 関数は MATCH によって返された位置を使用して、B 列から対応する売上値を取得します。
この式は、A 列にデータを追加したり削除したりすると動的に調整され、常に範囲内の最新の日付の売上値を返します。
Google スプレッドシートの INDEX 関数による効率的なデータ検索
Google スプレッドシートの INDEX 関数は、行と列の位置に基づいて特定のセルまたは範囲からデータを取得するための便利なツールです。INDEX 関数の構文と使い方を理解することで、この関数を活用して Google スプレッドシートのデータを効率的に分析できます。
データセットの大小にかかわらず、INDEX 関数は必要な情報を正確に取り出すための柔軟で信頼性の高い方法を提供します。
コメントする