列のヘッダーを取得一致した値と一致することを
一致した値に対応する列ヘッダーを取得する場合は、INDEX、MAX、SUMPRODUCT、およびCOLUMN *関数の組み合わせを使用して出力を抽出できます。
INDEX:指定された範囲内の特定の行と列の交点にあるセルの値または参照を返します。
構文:= INDEX(array、row_num、column_num)
MAX:セルまたは配列の範囲から最大数を返します。たとえば、数値のリストに5、6、7、8、9、および10が含まれている場合、出力は10になります。
構文= MAX(number1、number2、…)
最大255個の引数があります。以下に示すスクリーンショットを参照してください:
SUMPRODUCT:対応する範囲または配列の積の合計を返します。
構文:= SUMPRODUCT(array1、array2、array3、…)
array1、array2、….. array255は、乗算してから追加するセルまたは配列の範囲です。
SUMPRODUCT関数には最大255個の配列を含めることができます。以下に示すスクリーンショットを参照してください:
COLUMN:参照の列番号を返します。
構文:= COLUMN(参照)
[.underline]#例を見てみましょう:#数値を含む3つの列ヘッダーがあります。セルE2を検索し、セルF2で結果を取得するための数式が必要です。その列の見出しである必要があります。
セルE2の列Bから値を選択すると、セルF2の列見出しになります。
ルックアップ値は5です。スナップショットの下を参照してください:
-
セルF2では、数式は
になります。 === = INDEX($ A $ 1:$ C $ 1、SUMPRODUCT(MAX(($ A $ 2:$ C $ 5 = E2)(COLUMN($ A $ 2:$ C $ 5))))-COLUMN($ A $ 1) +1)
*キーボードのEnterキーを押します。
*関数は行名を返します
ルックアップ5が列Bにあるため、取得する出力は「ヘッダー2」*です。
-
セルE2の値を5から10に変更すると、数式はそれに応じて結果を自動的に変更します。