エクセルがVBAを禁止しつつあるからラムダを覚えることにした
はい、おはようございます。僕です。今日も生きていることにネットの海に伝えるブログを更新していきます。そんなことしなくていいからという意見もわかります。でも毎日こんなことやっていると書くことなくなるのも事実なのです。
ということでねエクセルの話をしようと思います。最近エクセルの作業効率化とかそんな話がバズっているのもみたし、セキュリティの都合上マクロ付のファイルは信頼できないソースからだとブロックされるとかそんなことになっているからね。もうVBAでやっていく以外にもマクロ的な事をできるようにならないといけないのかもしれないと思ったのです。
で件のラムダってこれ。
LAMBDA 関数 - Microsoft サポート
独自の関数をつくれるみたいな機能。
実際にFizzBuzzやる機能をつくってみるとこんな感じ。
つくった感触としてはJavaScriptの即時関数を一行で書いているような感触。こんな風に。
(num=>num%15==0?"FizzBuzz":(num%5==0?"Buzz":(num%3==0?"Fizz":num)))(24)
ただエクセル関数は三項演算子ないから括弧まみれでよくわからなくなる……。マクロが気軽に共有できなくなってきているからこういうのもちゃんと使えるようにしていかないとならんのだろうな……。
おわり