最近の傾向として、Excelを使う頻度がかなり下がってきており、Google Apps スプレッドシートを使う割合が多くなってきています。
スプレッドシートの場合には、ファイル名に日付をいれたり、枝番つけたり、編集者名いれたり、、、、等々のアナログなバージョン管理も不要ですし、複数人で同時に編集できる利点もあります。
(ただし、ファイル所有者のアカウントが削除されると、ドキュメントも一緒に喪失する別の問題はありますが。。。)
基本的にはExcelとほぼ同じことができるのですが、スプレッドシートの場合にはマクロ(VBA)が使えません。
そんなマクロの代わりに用意されているのが、Google Apps Script(GAS)です。
Apps スクリプトの概要
サイトで Google Apps スクリプト 新しいウィンドウで開く を使用して、メールの送信、Google カレンダーの招待状の作成などの操作を行ったり、動的にコンテンツを生成したりできます。JavaScript で記述されたこれらのスクリプトは、Google のサーバー上で実行され、大部分の Google サービスにアクセスできるので、さまざまなタスクを簡単に自動化できます。
個人的には慣れ親しんだJavaScriptでコードが書けるのはかなり有り難いです。
とりあえず作る&使ってみる
縦方向に並んだセルを半角スペースで区切って1つのセルにまとめて表示したいというケースがあったので、作ってみました。
コード
GAS 選択範囲のセル内の文字を結合
GAS 選択範囲のセル内の文字を結合. GitHub Gist: instantly share code, notes, and snippets.
アウトプット
まとめ
実際にはスプレッドシートのDB定義書からFuelPhpのoilコマンドを簡易に作れないかというのが今回の始まりでした。
Excel時代にはVBAだからと敬遠してたマクロですが、いまさらながらGASは期待値大です。