クイックナビゲーション
BYROW 関数
概要
BYROW 関数は LAMBDA 関数を配列の各行に適用し、結果として配列を返します。たとえば、3列×2行の配列を処理すると、1列×2行の結果配列が返されます。この関数は行ごとの集計や変換処理に最適です。
構文
BYROW(array, lambda(row))
パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| array | Array |
はい | LAMBDA を適用する対象配列。行ごとに処理されます。 |
| lambda | LAMBDA |
はい | row をパラメーターとして受け取り単一値を返す LAMBDA 関数 |
BYROW関数の使用
BYROW は配列の各行に対して LAMBDA 関数を適用し、結果を縦方向の配列として返します。行ごとの最大値、最小値、合計、平均などの計算に使用します。従来の配列数式よりも直感的で簡潔な記述が可能です。
BYROWの一般的な例
各行の最大値を求める
=BYROW(A1:C10, LAMBDA(row, MAX(row)))
指定範囲の各行から最大値を抽出し、縦一列に結果を表示します。
各行の二乗和を計算
=BYROW(A1:C10, LAMBDA(row, SUMSQ(row)))
各行の値の二乗を合計した結果を返します。SUMSQ 関数を活用。
各行の平均値を計算
=BYROW(A1:C10, LAMBDA(row, AVERAGE(row)))
各行の平均値を計算し、結果を縦方向に展開します。
よくある質問
BYROW は行ごとに処理し縦方向に結果を返します。BYCOL は列ごとに処理し横方向に結果を返します。
LAMBDA(row, 処理式) の形式で記述します。row が現在の行の配列を表します。
2次元配列(複数行・複数列)が使用可能。単一行・単一列も処理できます。
一般的なエラーと解決策
#VALUE! エラー
Cause: 無効な LAMBDA 関数またはパラメーター数の不一致
Solution: LAMBDA(row, 処理式) の正しい構文を確認してください。
#CALC! エラー
Cause: LAMBDA が単一値以外を返す
Solution: LAMBDA は必ず単一の値を返すように記述してください。
#NAME? エラー
Cause: BYROW または LAMBDA が認識されない
Solution: Excel 365 を使用しているか確認してください。
注記
- Excel 365 でのみ利用可能
- LAMBDA 関数は単一値を返す必要があります
- 動的配列領域に結果が展開されます
- 大規模データセットでも高速処理
- 他の動的配列関数(MAP, REDUCE)と併用可能
互換性
利用可能: Excel 365, Microsoft 365
利用不可: Excel 2021, Excel 2019, Excel 2016, Excel 2013, Excel 2010, Excel 2007, Excel 2003
コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 365