GASの愛する皆様こんにちは 大橋です。
2018/04/11のApps Script及びGoogle Sheetsのアップデートで、
Excelにあるような「マクロを記憶」機能が追加されました。
Think macro: record actions in Google Sheets to skip repetitive work
Record macros in Sheets, skip mundane tasks https://t.co/dUkcZa1Ebv @YouTubeさんから
— おーはし(さんとりー) (@soundTricker318) April 13, 2018
でかい更新すぎて涙が止まりませんが、花粉のせいかもしれません。
今回はこのマクロ機能を追っていきたいと思います。
マクロを記録する。
まずは大本命のマクロの記憶の仕方です。
- Sheetsにマクロ機能が追加されていると、メニューの「ツール」に「マクロ」が追加されます。そのサブメニュー内に「マクロを記録」が表示されるので、そのままクリックしてください。
- 画面下部にマクロ記録用のダイアログが表示され、マクロの記憶が開始されます。そのまま任意の操作を行ってください。
- 操作が終わったら、ダイアログの保存ボタンを押してください。
- マクロ名と、ショートカットキーの割当を聞かれるので、それぞれ任意に入力して、保存ボタンを押下します。
これでマクロが記録できました。
マクロを利用する
次は記録したマクロを利用してみます。
利用するには現在2種類の方法があるようです。
- メニューから起動
- ショートカットキー
メニューから起動
メニューから起動するにはメニューから「ツール」→「マクロ」→「{利用したいマクロ名}」をクリックするのみです。
ショートカットキー
マクロを記憶した際にショートカットキーを割り当てておけば、メニューから呼び出さずにマクロを呼び出すことが可能です。
マクロを管理する
マクロメニュー内の「マクロを管理」からマクロの管理メニューが開けます。
マクロの管理メニューでは、以下のことが行なえます。
- マクロ名の変更
- ショートカットキーを割り当て
- マクロの削除
- マクロに割り当てられているApps Scriptの編集
なお、このマクロ名と、GAS上の関数の組み合わせは全て「マニフェストファイル」にまとめられています。
細かい設定を確認したかったり、大量のスクリプトを設定したい場合などは、マニフェストファイルを直接いじってもいいと思います。
マクロのインポート
マクロを記憶せずに作成した、Apps Scriptの関数をマクロとして割り当てることも可能です。
上記の様なマクロに割り当てられていない関数がある場合、
マクロメニューにて「インポート」メニューが有効になります。
インポートメニューではマクロの割当が行われていない関数が一覧表示され、マクロとして登録が可能になります。
「関数を追加」ボタンをクリックすれば、マクロとしてインポートが行なえます。
一度マクロとして登録すればショートカットキーを割り当てることも可能です。
注意点
最後になりますがマクロにはいくつか注意点があります。
- SheetsのContainer Bound Scriptのみ利用できます。
- Standalone Scriptはマクロ化出来ません。
- Sheets add-onsではマクロは作れません。
- ライブラリではマクロは作れません。
- Sheets以外では現在の所マクロ化出来ません
2018/04/17 追記)
公式ドキュメント上の記載はありませんが、現在Chromeでのみ利用可能とのコメントを @matsuyoro さんからいただきました。
Chrome以外のブラウザでマクロが表示されていない場合はChromeで試してみてください。
まとめ
如何だったでしょうか?
マクロの記憶機能により今までGASをフルスクラッチで作る必要だったのが、
ある程度マクロを利用して作成し、その後編集を行うという手段が取れるようになりました。
またショートカットキーを割り当てられるようになり、かなり扱いやすくなったと言えます。
今回のマクロ対応により、SpreadsheetAppにも大量の関数が追加されているので、そちらも使えるようにしていきたいですね。