Excel の MAKEARRAY 関数は、カスタム関数を使って配列(行列)を生成するための強力なツールです。行数・列数を指定し、それぞれの位置に何を表示するかを動的に定義できます。
🔹 基本構文
MAKEARRAY(行数, 列数, 関数)
行数:配列の高さ(縦の要素数)列数:配列の幅(横の要素数)関数:各要素をどう計算するかを定義するラムダ関数
※
関数はラムダ式で、各要素の「行番号」と「列番号」を引数として受け取ります。
✅ 簡単な例
例:2行3列の配列を作成して、それぞれのセルに行番号と列番号を表示
=MAKEARRAY(2, 3, LAMBDA(row, col, row & "," & col))
結果:
| A | B | C |
|---|---|---|
| 1,1 | 1,2 | 1,3 |
| 2,1 | 2,2 | 2,3 |
🔸 実用例
例:九九表(1〜9の掛け算)
=MAKEARRAY(9, 9, LAMBDA(row, col, row * col))
→ 9×9 の九九表が自動で生成されます。
🔸 他の関数との組み合わせ(LET など)
例:行番号+列番号の和を表示(LET で変数定義)
=MAKEARRAY(5, 5, LAMBDA(r, c, LET(x, r + c, x)))
🔸 応用:条件付きの配列生成
例:偶数のセルだけに値を入れる(それ以外は空)
=MAKEARRAY(5, 5, LAMBDA(r, c, IF(MOD(r + c, 2) = 0, "○", "")))
💡 よくある用途
- 変化する行列を動的に生成
- グリッド表示(座標表、マトリクスなど)
- 数値の分布、パターン、条件付きレイアウト作成
注意点
- 利用には Excel 365 が必要です。
MAKEARRAYは「配列関数」なので、セルに展開される形で結果が表示されます。- 返す配列のサイズに注意(大きすぎると計算が重くなります)