こんにちは、凛です。2児のママで現役ナース。夜勤明けの細切れ時間を副業GASに投じ、月5〜8万円の副収入を継続中。「看護師でもコードは書ける」を合言葉に、家事育児とプログラミングを両立する等身大の情報を発信しています。本記事のコードは静的検証済みです(構文・API仕様・ロジックを確認)。GASでコードを書いていると、必ず一度は「これ、毎回ゼロから書くのだるい…」と感じる瞬間が来ます。そこで救世主になるのがGASライブラリ。今日は追加手順と、2026年時点で現役活躍中のおすすめライブラリ10選を、業務で実際に使っている目線で紹介します。
「GAS ライブラリ」で検索してここに来た方が、読み終わった直後にすぐプロジェクトへ追加できるレベルで書いています。
こんな悩みありませんか?
- 「GASにもライブラリを追加する仕組みがあるらしいけど、手順がわからない」
- 「スクリプトIDってどこで見るの?」
- 「どのライブラリが今も動いているのか知りたい(古い記事が多すぎる)」
- 「ライブラリを追加したら既存コードが壊れた…」
- 「複数人で使うとき、バージョン管理はどうする?」
私も副業案件で先輩から「これライブラリ使って」と言われ、スクリプトIDという単語を聞いた瞬間にフリーズした記憶があります。仕組みさえ分かれば超便利なので、最短ルートでマスターしていきましょう。
GASライブラリとは?基本を30秒で
GASライブラリは、他のGASプロジェクトを自分のプロジェクトから呼び出せる仕組みです。npm/pipのようなパッケージマネージャではなく、「他人のGASプロジェクトをID経由で参照する」という独自の方式。
自分のGAS ─[スクリプトID参照]─→ 他人のGAS(ライブラリ)
↓
公開されている関数を呼び出せる
メリット:
- 車輪の再発明をしなくていい
- バージョン指定で安定稼働
- 自分用のユーティリティ関数をライブラリ化すると、複数プロジェクトで共有可能
デメリット:
- 呼び出しは通常のメソッドより数倍遅い
- 依存先が更新停止・削除されるリスク
- 外部ネットワーク遅延と同じ扱い
ライブラリ追加の最短3ステップ
Step 1:対象ライブラリのスクリプトIDを入手
スクリプトIDは、ライブラリのGASエディタで「プロジェクトの設定」→「スクリプトID」からコピーできます。npmのパッケージ名に相当する識別子で、1つのライブラリにつき1つです。
例:1B7FSrk5Zi6L1rSxxTDgDEUsPzlukDsi4KGuTMorsTQHhGBzBkMun4iDF
Step 2:自分のGASプロジェクトに追加
GASエディタを開き、左サイドメニューの「ライブラリ」(📚アイコン)の+ボタンをクリック。
- スクリプトIDを貼り付けて「検索」
- バージョンを選択(基本は最新安定版)
- ID(呼び出し時の名前)を決める。デフォルトはライブラリ名
- 開発モード(HEAD)OFF推奨(本番は固定バージョン)
- 「追加」
Step 3:コードから呼び出す
追加したIDを名前空間として、そのライブラリの公開関数を叩けます。
// ID を "MyUtil" として追加したライブラリの関数呼び出し
function demo() {
const result = MyUtil.doSomething('引数');
console.log(result);
}
2026年おすすめライブラリ10選
実際に私が業務・副業で動かしているライブラリだけ厳選しました。
1. OAuth2 for Apps Script
- 用途: 外部API(Salesforce、Twitter/X、Discord等)の認証
- 定番度: ⭐⭐⭐⭐⭐
- 公式リポジトリ:
googleworkspace/apps-script-oauth2
GASから外部APIを叩くとき、OAuth認証の実装を一から書くと泣きます。このライブラリでほぼ全部解決。
2. Moment.js for GAS
- 用途: 日付操作・フォーマット変換
- 定番度: ⭐⭐⭐⭐
- 注意: 本家Moment.jsはメンテナンスモード。新規なら
Utilities.formatDateやLuxon検討
日付操作が多い請求書・レポート系プロジェクトで重宝します。
3. Lodash GS
- 用途: 配列・オブジェクト操作のユーティリティ
- 定番度: ⭐⭐⭐
- 用途:
_.chunk,_.uniqBy,_.groupBy等が使える
V8ランタイムでも便利な関数は多く、特にgroupBy系の需要が高いです。
4. BetterLog / BetterConsole
- 用途: スプレッドシートにログを書き出す
- 定番度: ⭐⭐⭐⭐
- メリット: 実行ログより長期保存・検索しやすい
大量のトリガーを走らせるプロジェクトで必須級。
5. cJobs / BatchRequest
- 用途: GASの6分制限を突破するためのバッチ処理
- 定番度: ⭐⭐⭐
- 注意: スクリプトプロパティを使うので衝突に注意
大量データ処理の強い味方です。
6. SpreadsheetAsDatabase
- 用途: スプシをNoSQL風DBとして扱う
- 定番度: ⭐⭐⭐
- メリット: find/insert/update/deleteのCRUDが整う
個人用のミニアプリに最適。
7. Fast XML Parser
- 用途: XML形式のレスポンスを扱う
- 定番度: ⭐⭐
- 用途: RSS取得、旧SOAP API対応
8. dbdashboard / Charts library
- 用途: 動的グラフ生成
- 定番度: ⭐⭐
ダッシュボード系Webアプリ制作時に。
9. AsanaApp / TrelloApp / NotionApi
- 用途: 各サービスのAPI呼び出しラッパー
- 定番度: ⭐⭐⭐
業務連携で各サービスのAPI叩くときの型が揃います。
10. Moment-Timezone Alternative
- 用途: タイムゾーン変換(日本・米国・EU等)
- 定番度: ⭐⭐⭐
夜勤の勤怠をJSTで集計、米国支社のレポートはEST、みたいなシーンで。
実運用のベストプラクティス
バージョンは必ず固定
HEADで追加すると、ライブラリ開発者がpushするたびに自分のコードが挙動変わる可能性があります。本番プロジェクトは必ず安定バージョン番号で固定。
呼び出し速度の遅さに注意
ライブラリ経由の関数呼び出しは、ローカル関数より明確に遅いです(1呼び出し数十ms〜)。ループ内で大量呼び出しすると、6分制限にすぐ引っかかります。
// ❌ 遅い:ループ内でライブラリ呼び出し
for (let i = 0; i < 1000; i++) {
const v = MyLib.calc(arr[i]);
}
// ✅ 速い:ライブラリ側でバルク対応がある場合それを使う
const vs = MyLib.calcBulk(arr);
自作ライブラリ化のタイミング
2プロジェクト以上で同じコードをコピペしたら、ライブラリ化のサイン。自分のスクリプトを**「ライブラリ」専用プロジェクト**として分離しておくと、保守性が一気に上がります。
よくあるエラーと解決法
Authorization is required to perform that action
追加直後によく出る権限エラー。GASエディタで Run ボタンを1回押して、許可ダイアログを通してください。
Missing ; before statement
ライブラリIDの名前衝突。デフォルトIDが他のライブラリと被っていないか、プロジェクト設定で確認。
ライブラリがロードされない
スクリプトIDが間違っているか、共有権限が「リンクを知っている全員:閲覧者」になっていない可能性。ライブラリ提供側の設定を確認。
まとめ
- ライブラリはスクリプトID経由で追加する独自方式
- Step1: ID入手 → Step2: プロジェクトに追加 → Step3: 名前空間で呼び出す
- 2026年定番はOAuth2・BetterLog・Lodash GSあたり
- バージョンは必ず固定、呼び出し速度に要注意
- 2プロジェクト以上で重複するコードは自作ライブラリ化のサイン
ライブラリ選定は**「今も動いているか」の見極めが全て**です。古い記事で紹介されていても、3年間commitのないライブラリは避けましょう。本記事は2026年4月時点の現役稼働を確認しています。
📚 さらに学ぶための参考書籍
PR:本記事には広告(楽天市場)が含まれます
GASやJavaScriptを体系的に学びたい方は、書籍も併用するのが効率的です。 日本語の解説書が複数出ているので、自分のレベルに合うものを選んでみてください。
👉 楽天市場 で「Google Apps Script」または「JavaScript 入門」を検索
関連記事
この記事を書いた人:凛
2児のママで現役ナース。夜勤明けの細切れ時間を副業GASに投じ、月5〜8万円の副収入を継続中。「看護師でもコードは書ける」を合言葉に、家事育児とプログラミングを両立する等身大の情報を発信しています。本記事のコードは静的検証済みです(構文・API仕様・ロジックを確認)。