![見出し画像](https://assets.st-note.com/production/uploads/images/123668325/rectangle_large_type_2_c5ef60b66befc50944a7b0ea05c606e3.png?width=1200)
Excelでフィボナッチ数列を生成する関数を作成した話
経緯
仕事柄、数列を見ることが多いのですが、とある数列を見たときに「あ、これフィボナッチ数列かもしれない」と思い、検索。結果、4項目あたりから違いました。
しかし、手元を見るとExcelを開いていたので、つい「フィボナッチ数列、LAMBDA関数利用すれば作れるのでは?」と閃いてしまい作成に至りました。
作り方
LAMBDA関数とMAKEARRAY関数を用いるのでOffice365推奨。
Ctrl+F3でネームマネージャーを開く
新規
名前を「FIBO」
次を参照に「=LAMBDA(x,IF((x=0)+(x=1),x,FIBO(x-2)+FIBO(x-1)))」
OK
新規
名前を「FIBOSEQ」
次を参照に「=LAMBDA(x,MAKEARRAY(x,1,LAMBDA(x,y,FIBO(x))))」
OK
使い方
任意のセルに「=FIBOSEQ(x)」と入力。xには任意の項数を入力。
![](https://assets.st-note.com/production/uploads/images/123668064/picture_pc_8f0eb8695acecc76d6cef440569e604c.gif)
あとがき
閃いたのはいいけれども、使い道がないことに気づいたのは完成した後でした。虚しさのあまりそのまま消そうと思いましたが、ニッチな需要がもしかしたらあるかもしれないので記事にしました。誰かが助かれば良いな〜🍀
追記
手元のPCでは33項までは生成できました。それ以降は時間が掛かりすぎるので別の手段が良いかと…
25項あたりから「もたついてる…」といった感じです。(`・ω・´)ゞ
いいなと思ったら応援しよう!
![あかやす](https://assets.st-note.com/production/uploads/images/14433968/profile_4a71e6a55c7c7019a3ebbb19ba513fc9.png?width=600&crop=1:1,smart)