ちょっとGoogleスプレッドシートで集計をしていたときに、同じ式をコピペして値を変えていくのも面倒だと思ったからユーザー関数をまとめようと思ったときのメモ。
スプレッドシートにはGoogle Apps Scriptを記述してオリジナルの関数を定義することができます。ExcepでいうところのVBA。
「ツール→スクリプト エディタ」からエディタを開くことができ、例えばここに
function hoge(num) { retur num }
というように定義すると、シートのほうで
などというように使用できるようになります。
で、目的としてはもともとシートで使っていた式を短縮化したかったのですが、どうもスプレッドシート関数はそのまま使えないよう。
function hoge(num) { return ROUNDDOWN(num); }
などどしても、ROUNDDOWNが見つからないとエラーになります。
どうもその手のサイトをみてみても、わざわざシートに代入するようにしているので、直接使う方法はないんじゃないかと思います。
参考:Google Apps Scriptでプログラミングを学ぶ 第5回 「Googleスプレッドシート関数の操作」
けれどGASはJavaScriptのようなので、JavaScriptの関数が使用できます。
例えばROUNDDOWNはMath.floorで同じ事ができます。
(Math.floorは整数を扱うので、小数点以下の場合は10倍して10で割る、など調整が必要)
もしかしたら何かしら方法はあるのかもしれませんが、ひとまず見当たらなかったので…
ユーザー関数を使おうと思ったら、JavaScriptのほうを調べてみるのが近道かもしれません。