Posted at

GoogleスプレッドシートのCONCATENATEの文字制限をGASを用いて突破する方法


問題

Google スプレッドシートの標準の関数CONCATENATE

https://support.google.com/docs/answer/3094123?hl=ja

文字列を結合してくれるものなのですが5万文字を超える場合はエラーがでて結合ができなくなる。

スクリーンショット 2019-04-15 19.30.12.png


解決方法

今回はこれをGAS(Google App Script)を用いて解決する

GASを書くには以下のようにツール→スクリプトエディタでエディタで開く

スクリーンショット 2019-04-15 19.32.37.png

コードはたったの5行!で今回はCONCATENATEを独自拡張したものなので関数名はCONCATENATE_EXTENSIONとしました。

スクリーンショット 2019-04-15 19.34.22.png

やってることは引数を取得してtextのsplit関数で結合しているのみです。

これを保存するとそのシートで CONCATENATE_EXTENSION(A1, A2) みたいにCONCATENATEと同じように使えて5万文字の制限がないものとして使える。


まとめ

今回のCONCATENATE関数のようにGoogleスプレッドシートで制限がかかっているような関数でもGASを使って独自に(5行くらい)書けば便利な関数が使えるのでオススメです!