BYCOL 関数

Excel 365, Excel 2021

概要

BYCOL 関数は、指定された配列の各列に対して LAMBDA 関数を適用し、結果を単一の列として返す動的配列関数です。列ごとの集計や変換を一度に実行でき、従来の複数数式を1つに簡略化します。

構文

BYCOL(array, lambda(column))

パラメータ

パラメータ タイプ 必須 説明
array 配列 はい 列ごとに処理する対象配列。複数行×複数列の範囲を指定
lambda LAMBDA はい column(列配列)を1つのパラメーターとして受け取り、1つの値を返す LAMBDA 関数

BYCOL関数の使用

BYCOL は配列の各列に対して同じ LAMBDA 処理を適用し、結果を縦長の配列として返します。列ごとの合計、平均、最大値、独自計算などを一度の数式で実現。従来は各列ごとに別数式が必要でしたが、BYCOL で1つに集約できます。

BYCOLの一般的な例

各列の最大値を求める

=BYCOL(A1:C10, LAMBDA(col, MAX(col)))

A~C列の各列最大値を縦に表示。3つの最大値が1列に展開されます。

各列の二乗和を計算

=BYCOL(A1:C10, LAMBDA(col, SUMSQ(col)))

各列の値を二乗して合計。統計計算や距離計算に便利です。

各列の平均値をパーセント表示

=BYCOL(A1:C10, LAMBDA(col, AVERAGE(col)&"%"))

平均値を文字列結合でパーセント表示。結果はテキストになります。

よくある質問

BYCOL は列ごと(縦方向)に処理、BYROW は行ごと(横方向)に処理します。

各列に対して単一の値のみ返却してください。複数値は #CALC! エラーになります。

部分的には可能ですが、複数列同時処理は困難。BYCOL が最も効率的です。

一般的なエラーと解決策

#VALUE! エラー

Cause: LAMBDA のパラメーター数が不正

Solution: LAMBDA(column) の形式を確認し、1パラメーターにしてください

#CALC! エラー

Cause: LAMBDA が配列を返す

Solution: LAMBDA は単一値のみ返却するように修正

#NAME? エラー

Cause: LAMBDA 関数未認識

Solution: Excel 365/2021 で使用してください

注記

  • Excel 365、Excel 2021 専用関数です
  • LAMBDA 関数の column パラメーターは完全な列配列を受け取ります
  • 結果は常に1列の縦長配列になります
  • 他の動的配列関数(MAP、SCAN)と併用可能

互換性

利用可能: Excel 365, Excel 2021

利用不可: Excel 2019 以前, Excel 2016 以前

コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365, Excel 2021