GoogleAppScript
本項は書きたての記事です。正確な情報は公式サイト、公式ドキュメント、記載の参照サイトでご確認ください。
ライブラリ、アセットの著作権は版元・開発者サイトで必ずご確認ください。
目次
History
※ たぶんあるだろうがVersion/Revisionが不明なためNoとした。
GAS開発
JavaScript(ECMAScript/JS)ベース。
少し癖はあるもののJSの文法等を理解していれば楽に入って行ける。
次に、ECMAScriptであるものの
開発環境をある程度統一したいという気持ちは出てくるもの。そこで
「clasp」を使って
TypeScriptで開発することができる。
webフロント/バックをnode系で開発しているなら、
TypeScriptに統一できるのはメリットある。
またGit管理を行えば効率化できる。
ライブラリ
自分のGAS関数をライブラリ化できる。
過去の資材をいくらコピペで良いといっても煩雑になる。そこでライブラリ化して呼び出すだけで使えるようになっておきたい。
チームや社内で共有資産として展開しておくといい。
後述でジェネリックなライブラリを紹介している。Githubなどで公開されている方もいるが、ストア化されていないのでなかなか見つけ辛いのが難点。
GASトリガー
GASトリガーはAWS Lambdaのように「実行時間」「実行回数」「トリガー制限」「サービス毎の制限」がある。
業務で有償利用している場合を除いて無料枠のはずなので、GASはボタン押下で動かすようにして極力トリガーは使わないようにしたい。
どうしてもトリガーを使いたい場合はトリガーカウンターを用意して、閾値を超えた場合は発報(メールやSMS等)するようにした方が良い。
最大実行時間 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
スクリプト ランタイム |
6 分 / 実行 |
6 分 / 実行 |
|
カスタム関数ランタイム |
30 秒 / 実行 |
30 秒 / 実行 |
実行時間 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
トリガーの合計実行時間 |
90 分 / 日 |
6 時間 / 日 |
実行回数制限 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
カレンダーの予定の作成 |
5,000 / 日 |
10,000 人 / 日 |
|
連絡先の作成 |
1,000 人 / 日 |
2,000 人 / 日 |
|
グループの読み取り |
2,000 人 / 日 |
10,000 人 / 日 |
|
JDBC 接続 |
10,000 人 / 日 |
50,000 / 日 |
|
JDBC 接続の失敗 |
100 人 / 日 |
500 / 日 |
|
プレゼンテーションの作成 |
250 / 日 |
1,500 / 日 |
|
プロパティの読み取り/書き込み |
50,000 / 日 |
500,000 / 日 |
|
スプレッドシートの作成 |
250 / 日 |
3,200 / 日 |
|
URL 取得の呼び出し |
20,000 / 日 |
100,000 人 / 日 |
トリガー制限 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
トリガーの合計実行時間 |
90 分 / 日 |
6 時間 / 日 |
|
トリガー |
1 ユーザー / スクリプトあたり 20 件 |
1 ユーザー / スクリプトあたり 20 件 |
Gmail制限 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
1 日あたりのメール受信者 |
100 / 日 |
1,500 / 日 |
|
ドメイン内の 1 日あたりのメール受信者 |
100 / 日 |
2,000 人 / 日 |
|
メールの読み取り/書き込み(送信を除く) |
20,000 / 日 |
50,000 / 日 |
|
メール添付ファイル |
250 個 / 通 |
250 個 / 通 |
|
メール本文のサイズ |
200 KB / メッセージ |
400 KB / メッセージ |
|
メールあたりのメール受信者数 |
50 / 通 |
50 / 通 |
|
メールの添付ファイルの総サイズ |
25 MB / メッセージ |
25 MB / メッセージ |
GoogleMap制限 |
機能 |
無料アカウント |
Google Workspace アカウント |
|
静的マップのレンダリング |
1,000 人 / 日 |
10,000 人 / 日 |
|
Google マップの方向のクエリ |
1,000 人 / 日 |
10,000 人 / 日 |
|
Google マップのジオコードの呼び出し |
1,000 人 / 日 |
10,000 人 / 日 |
|
Google マップの高度サンプルのクエリ |
1,000 人 / 日 |
10,000 人 / 日 |
参考
ジェネリック・ライブラリ
ライブラリと紐づけるIDは、スクリプトIDのほかプロジェクトキーがある。
自身の
GASライブラリに登録するのはスクリプトIDのほう。
ライブラリ名 |
概要 |
スクリプトID |
Day.js |
日時計算 |
1ShsRhHc8tgPy5wGOzUvgEhOedJUQD53m-gd8lG2MOgs-dXC_aCZn9lFB |
SSheetDB |
スプレッドシートをDB的に扱う |
1m-mnNjwCIxUCgoZxTeHpvICFyntLCs52IjSxfHGA-6MbBiym441opQ21 |
Underscore.js |
配列、オブジェクトの操作 |
1PcEHcGVC1njZd8SfXtmgQk19djwVd2GrrW1gd7U5hNk033tzi6IUvIAV |
BetterLog |
ログ出力 |
1DSyxam1ceq72bMHsE6aOVeOl94X78WCwiYPytKi7chlg4x5GqiNXSw0l |
ImgApp |
画像リサイズ |
1T03nYHRho6XMWYcaumClcWr6ble65mAT8OLJqRFJ5lukPVogAN2NDl-y |
Parser |
スクレイピング |
1Mc8BthYthXx6CoIz90-JiSzSafVnT6U3t0z_W3hLTAX5ek4w0G_EIrNw |
JsonDB |
jsonをDBライクに使う |
1GavkBlPnlyz4uu7GjgczEhsk5SyHOcQPPNQ_67AK-to3ii8X0i0T9MX4 |
Cheerio |
スクレイピング |
1ReeQ6WO8kKNxoaA_O0XEQ589cIrRvEBA9qcWpNqdOP17i47u6N9M5Xh0 |
GoogleApp連携
Form2Spread
(仮置き)
Spread2Spread
(仮置き)
Spread2Gmail
(仮置き)
Spread2GoogleChat
(仮置き)
Spread2gChatTask
(仮置き)
Spread2gCalendar
(仮置き)
最終更新:2024年08月05日 17:30