• 公開日:

Excelの列を指定する関数

この記事では、Excelの列を指定する関数をご紹介します。

列を指定する関数はたくさんありますが、その中でもよく使われる関数をピックアップして使い方などをご説明します。

以下では、列内のデータを返す関数や列番号を取得する関数などをご紹介しているので、使用用途に合わせて使い分けてみてください。

Excelの列を指定する関数

以下では、列を指定する関数を5通りご紹介します。

  • 列を指定してデータを抽出する関数
  • 列を指定してデータを検索して抽出する関数
  • 列を指定して列番号を取得する関数
  • 縦方向・横方向に検索して指定した列から対応するデータを抽出する関数
  • 検索条件が指定した列内にいくつあるかをカウントする関数

列を指定してデータを抽出する関数

INDEX関数とXMATCH関数を組み合わせると列を指定してデータを抽出することができます。

検索値に対応するデータが抽出できた

上記の画像では、INDEX関数とXMATCH関数を組み合わせて列を指定し、F3セルに「社員ID」を入力するとG3セルに対応する「氏名」が表示されるように設定しています。

例えばF3セルに「10008」を入力すると、G3セルに指定した列から対応する「高橋 勇樹」を抽出することができます。

以下で、方法の詳細をご説明します。

データを用意する

上記の画像のようなデータを用意します。

左の表から列を指定して必要なデータを右側の表に抽出します。

例では検索値を「社員ID」として対応する「氏名」をG3セルに表示します。

検索値を入力する

F3セルに検索値(例:10008)を入力します。

関数を入力する

G3セルに「=INDEX(D3:D17,XMATCH(F3,B3:B17))」を入力し、Enterを押します。

検索値が指定した列の何行目にあるのかをXMATCH関数で求めます。求めた値がINDEX関数の引数に使われる行番号になります。本来は引数で列番号も指定しますが、今回は列が1列しかないので省略します。

INDEX関数は、選択したセル範囲の中から指定した行番号と列番号が交差するセルの値を返します。書式は2つありますが、今回使用する書式は「=INDEX(配列,行番号,[列番号])」です。

INDEX関数の引数や使い方の詳細は以下の記事でご紹介しています。

ExcelのINDEX関数の使い方|行と列が交差する位置にあるセルを返す

XMATCH関数は、検索値を指定したセル範囲(配列範囲)内を検索して相対的な位置(上から数えて何番目か)を返します。書式は「=XMATCH(検索値,検索範囲,[一致モード],[検索モード])です。

MATCH関数と非常時に似た使い方をしますが、XMATCH関数のほうが引数が少ないので便利です。

XMATCH関数の引数や使い方の詳細は以下の記事でご紹介しています。

ExcelのXMATCH関数の使い方|範囲を検索し相対的な位置を返す

検索値に対応するデータが抽出できた

G3セルに指定した列から検索値に対応するデータを抽出することができました。

列を指定して検索したデータを抽出する関数

INDEX関数とXMATCH関数を組み合わせて列を指定し、検索値に対応する項目を自由に抽出することができます。

検索値に対応する任意の項目が抽出できた

上記の画像では、INDEX関数とXMATCH関数を組み合わせて列を指定し、検索値に対応する項目のデータを自由に表示できるように設定しています。

例えばF3セルに「10008」、G3セルに「役職」を入力すると指定した列から対応する「一般」を抽出することができます。

以下で、方法の詳細をご説明します。

データを用意する

上記の画像のようなデータを用意します。

左の表から列を指定して必要なデータを右側の表に抽出します。

例では検索値を「社員ID」として、任意の「項目」を入力するとH3セルに対応したデータを項目内から検索し、「欲しいデータ」が表示されます。

検索値を入力する

F3セルに検索値(例:10008)を入力します。

任意の項目を入力する

G3セルに項目(例:役職)を入力します。

「検索値」社員IDに対応する「項目」役職を指定した列から抽出します。

関数を入力する

G3セルに「=INDEX(A3:D17,XMATCH(F3,B3:B17),XMATCH(G3,A2:D2))」を入力し、Enterを押します。

XMATCH関数で検索値がどこにあるのかを求めます。求めた値がINDEX関数の引数に使われる列番号と行番号になります。

「項目」を切り変えるためにINDEX関数のセル範囲をA3セルからD17セルまで選択します。

検索値に対応する任意の項目が抽出できた

H3セルに指定した列から検索値に対応するデータを抽出することができました。

G3セルの「項目」を「氏名」や「所属チーム」に変更してデータを抽出することも可能です。

例えば「社員ID」が10008で「項目」が氏名の場合は、「欲しいデータ」に高橋 勇樹が抽出されます。

列を指定して列番号を取得する関数

通常のエクセルシートは列番号がアルファベットで表記されています。

関数の引数で列番号が必要になる際、COLUMN関数を使うと、指定した列やデータが何列目にあるのかを数字で知ることができます。

列番号を取得する方法は、以下の記事「COLUMN関数の基本的な使い方」セクションで紹介しています。

ExcelのCOLUMN関数の使い方|指定したセルの列番号を求める

縦方向・横方向に検索して指定した列から対応するデータを抽出する関数

データを縦方向と横方向に検索するにはXLOOKUP関数を使います。

XLOOKUP関数を使うと1つの関数で、INDEX関数とXMATCH関数を組み合わせた方法と同様の使い方ができて便利です。

詳細は以下の記事「XLOOKUP関数の基本的な使い方」セクションでご紹介しています。

ExcelのXLOOKUP関数の使い方|縦方向/横方向を両方検索する

検索条件が指定した列内にいくつあるかをカウントする関数

COUNTIF関数は、検索条件に指定した数値や文字列が指定した列内にいくつ存在するのかを求めます。

検索条件は記号や比較演算子などを使って柔軟に指定することができます。

詳細は以下の記事「COUNTIF関数の基本的な使い方」セクションでご紹介しています。

ExcelのCOUNTIF関数の使い方|条件に一致するデータの個数表示