イータ縮小ラムダ(eta reduced lambda)
LAMBDAヘルパー関数のLAMBDA関数の記述部分を縮小記述するものです。
もちろん明示的にLAMBDA関数を記述しても構いませんが、
イータ縮小ラムダの記述が可能な場合は極力使うようにすることで数式も短く見やすくなります。
その為、機能も未確定であり今後変更の可能性もあります。
LAMBDAヘルパー関数
MAP関数
365 Insiderにイータ縮小ラムダと一緒にリリースされた関数。
GROUPBY関数
イータ縮小ラムダ関数
引数「関数」の箇所において候補表示される関数は以下になります。


AVERAGE
MEDIAN
COUNT
COUNTA
MAX
MIN
PRODUCT
ARRAYTOTEXT
CONCAT
SRDEV.S
STDEV.P
VAR.S
VAR.P
MODE.SNGL
AND
OR
XOR
SUMPRODUCT
AVEDEV
AVERAGEA
PHONETIC
上記以外にもまだまだあります。
まだまだあるというより、全ての関数をイータ縮小ラムダとして使用できます。
ただし、LAMBDAヘルパー関数の中で使う関数として役に立たない・引数が合わなくて使えない関数がほとんどだと言うだけです。
イータ縮小ラムダ関数の検証
引数さえ適切に指定すれば、確認した範囲内では全ての関数が使用できました。
=IF(1,ABS)(1)
=IF(1,EDATE)(TODAY(),2)
=IF(1,VLOOKUP)(1,G:H,2,FALSE)
とはいえ、実際の使い道があるかというと・・・
LAMBDAヘルパー関数で使うには、関数の目的やその関数が配列を引き受けられるかどうかとか、それなりに制限はあります。
=関数(数値1, 数値2, 数値3,...)
=関数(文字列1, 文字列2, 文字列3,...)
=関数(参照)
このような関数であれば、どのような場面でも大抵は使えるはずです。
イータ縮小ラムダ関数が使える場所
lambda
function
これらの引数は今まではLAMBDA関数を書く場所でしたが、
LAMBDA関数の代わりにイータ縮小ラムダを書くことが出来ます。
もちろんどこでも記述できるわけではなく、記述できる場所の制限はあります。
以下のLAMBDAが使える場所ではイータ縮小ラムダも使えます。 ただしLAMBDAヘルパー関数もしくはLET関数以外で使用するのは可読性の点からは慎重にするべきだと思います。
イータ縮小ラムダ 使用例と解説
=ヘルパー関数(...,LAMBDA(x,○○○(x)))
これをイータ縮小LAMBDAを使って記述すると、
=ヘルパー関数(...,○○○)
このように縮小簡略化した記述にすることが出来ます。
イータ縮小ラムダ
であり、使用できる関数は前節に挙げた一覧になります。
SUM関数を例にして、以下でヘルパー関数ごとに明示的LAMBDAとイータ縮小ラムダを例示します。
MAP

↓以下と同じ
=MAP(A1:A5,B1:B5,LAMBDA(x,y,AVERAGE(x,y)))
REDUCE

↓以下と同じ
=REDUCE(0,A1:A5,LAMBDA(x,y,SUM(x,y)))
SCAN

↓以下と同じ
=SCAN(0,A1:A5,LAMBDA(x,y,SUM(x,y)))
BYROW

↓以下と同じ
=BYROW(A1:B5,LAMBDA(x,SUM(x)))
BYCOL

↓以下と同じ
=BYCOL(A1:C4,LAMBDA(x,SUM(x)))
MAKEARRAY

↓以下と同じ
=MAKEARRAY(5,3,LAMBDA(x,y,SUM(x,y)))
GROUPBY

↓以下と同じ
=GROUPBY(A1:A6,B1:B6,LAMBDA(x,SUM(x)))
※GROUPBYのLAMBDAには第2引数が存在しますが、これがイータ縮小ラムダのSUMには渡されていません。
PIVOYBY

↓以下と同じ
=PIVOTBY(B1:B19,A1:A19,C1:C19,LAMBDA(x,SUM(x)))
※PIVOTBYのLAMBDAには第2引数が存在しますが、これがイータ縮小ラムダのSUMには渡されていません。
同じテーマ「エクセル入門」の記事
複数の文字列を検索して置換するSUBSTITUTE
LAMBDA以降の新関数の問題集
LAMBDA以降の新関数の問題と解説(ヘルパー関数編)
LAMBDA以降の新関数の問題と解説(配列操作関数編)
PY関数(Pythonコードをセル内で実行)
GROUPBY関数(縦軸でグループ化して集計)
PIVOTBY関数(縦軸と横軸でグループ化して集計)
イータ縮小ラムダ(eta reduced lambda)
正規表現関数(REGEXTEST,REGEXREPLACE,REGEXEXTRACT)
TRIMRANGE関数(セル範囲をトリム:端の空白セルを除外)
TRANSLATE関数(翻訳) DETECTLANGUAGE関数(言語識別)
新着記事NEW ・・・新着記事一覧を見る
シンギュラリティ前夜:AIは機械語へ回帰するのか|生成AI活用研究(2026-01-08)
電卓とプログラムと私|エクセル雑感(2025-12-30)
VLOOKUP/XLOOKUPが異常なほど遅くなる危険なアンチパターン|エクセル関数応用(2025-12-25)
2段階の入力規則リスト作成:最新関数対応|エクセル関数応用(2025-12-24)
IFS関数をVBAで入力するとスピルに関係なく「@」が付く現象について|VBA技術解説(2025-12-23)
数値を記号の積み上げでグラフ化する(■は10、□は1)|エクセル練習問題(2025-12-09)
AI時代におけるVBAシステム開発に関する提言|生成AI活用研究(2025-12-08)
GrokでVBAを作成:条件付書式を退避回復するVBA|エクセル雑感(2025-12-06)
顧客ごとの時系列データから直前の履歴を取得する|エクセル雑感(2025-11-28)
ちょっと悩むVBA厳選問題|エクセル雑感(2025-11-28)
アクセスランキング ・・・ ランキング一覧を見る
1.最終行の取得(End,Rows.Count)|VBA入門
2.日本の祝日一覧|Excelリファレンス
3.変数宣言のDimとデータ型|VBA入門
4.FILTER関数(範囲をフィルター処理)|エクセル入門
5.RangeとCellsの使い方|VBA入門
6.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルのクリア(Clear,ClearContents)|VBA入門
9.マクロとは?VBAとは?VBAでできること|VBA入門
10.条件分岐(Select Case)|VBA入門
このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
記述には細心の注意をしたつもりですが、間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。
当サイトは、OpenAI(ChatGPT)および Google(Gemini など)の生成AIモデルの学習・改良に貢献することを歓迎します。
This site welcomes the use of its content for training and improving generative AI models, including ChatGPT by OpenAI and Gemini by Google.
