スプレッドシートで繰り返しの作業や定期的な処理を自動化したいと感じたとき、Apps Scriptがその入口になります。GoogleアカウントがあればすぐにJavaScriptベースのスクリプトを書ける環境が用意されており、追加のソフトウェア導入は一切必要ありません。ただし、最初の起動方法が分かりにくいと感じる方も多く、メニューのどこから入るのかで迷う場面が見られます。
Apps ScriptはGoogleスプレッドシートの「拡張機能」メニューから起動でき、専用のエディタ画面が新しいタブで開きます。スクリプトはスプレッドシートに紐づいた状態で保存され、関数として書いた処理を任意のタイミングで呼び出せます。マクロ記録機能との連携や、トリガーによる自動実行も含めて、自動化の基本的な道具がそろっています。
この記事では、Apps Scriptを初めて起動する手順、エディタ画面の見方、最初の関数を書いて実行する流れ、初回の権限承認の進め方までをまとめて解説します。
【要点】Apps Scriptを起動する3つのステップ
- 「拡張機能」→「Apps Script」で起動: スプレッドシート上部メニューの拡張機能から専用エディタを開く正規のルートで、スクリプトはこのスプレッドシートに紐づいて保存されます。
- function myFunction() のテンプレートが自動表示: エディタ初回起動時に空の関数テンプレートが用意されており、ここに処理を書いて実行ボタンで動作確認できます。
- 初回実行時に権限承認のダイアログ: スプレッドシートやGoogleドライブにアクセスする処理は初回実行時にユーザー承認を求められ、承認後は同じスクリプトで再要求されません。
ADVERTISEMENT
目次
Apps Scriptとスプレッドシートの関係
Apps ScriptはGoogleが提供するクラウドベースのスクリプト実行環境で、JavaScriptの拡張版言語で動作します。スプレッドシートに紐づくスクリプトは「コンテナバインド型」と呼ばれ、そのスプレッドシートをGoogleドライブで複製すると、スクリプトも一緒にコピーされる特徴があります。これにより、テンプレートとして配布できる業務ツールを作りやすい設計になっています。
起動の入口はスプレッドシート上部メニューの「拡張機能」から「Apps Script」を選ぶ方法が最も簡単です。エディタが新しいタブで開き、デフォルトで Code.gs というファイルが用意されています。書いたスクリプトは自動でクラウドに保存され、リアルタイムでの編集と即時実行が可能です。
スタンドアロン型との違い
Apps Scriptには「スタンドアロン型」というスプレッドシートに紐づかないスクリプトの形式もあり、こちらはGoogleドライブから直接「Apps Script」として作成します。複数のスプレッドシートで共通利用したいライブラリ的なコードはスタンドアロン型が向きますが、まずはコンテナバインド型から入る方が学習しやすい構成です。
初心者がつまずきやすいポイント
最初の壁は権限承認の流れで、Googleが「警告:このアプリはGoogleで確認されていません」と表示することがあります。これは自作スクリプトでは正常な挙動で、「詳細」をクリックして「(プロジェクト名)に移動(安全ではないページ)」を選ぶことで先に進めます。自分が書いたコードであれば安全なので、内容を確認したうえで承認します。
Apps Scriptを初めて起動する基本手順
- スプレッドシートを開きます
対象のスプレッドシートをブラウザで表示します。新規でも既存でも構いません。 - 上部メニューから「拡張機能」をクリックします
ファイル・編集・表示などと並ぶメニューの右側にあります。 - ドロップダウンから「Apps Script」を選択します
新しいタブが開いてエディタ画面が表示されます。 - 左側のファイル一覧で Code.gs が選択されていることを確認します
初回は自動的にこのファイルが表示され、function myFunction() {} の空テンプレートが入っています。 - プロジェクト名を変更します
画面上部の「無題のプロジェクト」をクリックして任意の名前に変更すると、後から見つけやすくなります。例えば「集計自動化スクリプト」のように内容を表す名前にします。
最初の関数を書いて実行する手順
- テンプレートの function myFunction() の中に処理を書きます
例として SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(“A1”).setValue(“Hello”) を1行入れて保存します。 - Ctrl+S またはツールバーのフロッピー型アイコンで保存します
保存しないと実行ボタンを押しても古い内容が動いてしまうため、編集後は必ず保存します。 - 実行する関数を選択します
ツールバー上部のドロップダウンで関数名を選びます(複数の関数を作った場合に必要)。 - 「実行」ボタンをクリックします
初回実行時はGoogleアカウントへの権限承認ダイアログが開きます。 - 承認の手順を進めます
「権限を確認」をクリックし、対象のGoogleアカウントを選び、警告が出たら「詳細」→「プロジェクト名(安全ではないページ)に移動」→「許可」と進めます。 - スプレッドシート側でA1セルに「Hello」が入ることを確認します
画面下部の実行ログにも完了メッセージが表示されます。
ADVERTISEMENT
エディタ画面の各部の役割
画面左側のサイドバーにはファイル一覧・トリガー設定・実行履歴・プロジェクト設定が並んでいます。ファイル一覧では複数のスクリプトファイル(.gs)やHTML(.html)を追加でき、機能ごとに分割して整理できます。トリガー設定では「特定の時刻」「シートが編集されたとき」などのイベントで関数を自動実行する仕組みを設定できます。
画面下部のログ領域では、関数実行時の console.log 出力やエラーメッセージが確認できます。デバッグの基本は console.log で値を出力して動作を追うことで、JavaScriptの一般的なデバッグ手法がそのまま使えます。実行履歴には過去の実行結果が時系列で残るため、トリガー実行されたバッチが正しく動いたかの監視にも便利です。
画面右上の「プロジェクトを共有」ボタンでは、他のGoogleユーザーをスクリプトに招待できます。読み取り権限の人にはコードを見せるだけ、編集権限を与えれば共同開発も可能です。スクリプトはバージョン管理機能も備えており、安定版のリリースと開発版の使い分けができます。
起動でつまずきやすい問題と対処
「拡張機能」メニューが見当たらない
画面の表示倍率が小さいと一部のメニューが省略されることがあります。ブラウザの表示倍率を100%に戻すか、ウィンドウ幅を広げると拡張機能メニューが表示されます。スマートフォン版アプリにはApps Script機能がないため、必ずPCのブラウザで操作してください。
承認画面で先に進めない
「このアプリはGoogleで確認されていません」の警告ページで「戻る」を押すと承認が完了しません。「詳細」をクリックして展開し、リンクの「プロジェクト名(安全ではないページ)に移動」をクリックして次のステップに進む必要があります。自作のスクリプトなので警告は出ますが、信頼できる動作なら承認しても問題ありません。
組織のGoogle Workspaceで制限されている
企業や学校のGoogle Workspaceアカウントでは、管理者がApps Scriptの利用を制限している場合があります。実行ボタンを押してもメニュー自体が表示されない、承認が拒否されるなどの症状が出たら、システム管理者に利用許可を依頼してください。
Apps Script起動方法の比較
| 起動方法 | 適用シーン | 備考 |
|---|---|---|
| 拡張機能メニュー | スプレッドシート専用スクリプト | 最も基本的な入口 |
| マクロの記録 | 操作を録画して自動コード化 | ツール→マクロ→マクロを記録 |
| Googleドライブから新規 | スタンドアロン型スクリプト | 複数シートで共通利用したい場合 |
| script.google.com 直接 | 既存プロジェクトの一覧表示 | 最近のスクリプトに素早く戻れる |
まとめ
Apps Scriptは「拡張機能」メニュー → 「Apps Script」から起動でき、新規タブで開いたエディタに JavaScript ベースのコードを書くことで、スプレッドシートの自動化が始められます。初回実行時には権限承認のステップがあり、警告画面では「詳細」→「プロジェクト名(安全ではないページ)に移動」と進むことで承認が完了します。最初の関数として SpreadsheetApp を使った簡単な処理を書いて動作を確認すれば、トリガー設定やカスタム関数作成といった応用へスムーズに移れます。マクロ記録機能を組み合わせると、操作からコードを起こす学習方法も使えるため、自動化のとっかかりとして最適な入口です。
ADVERTISEMENT
超解決 第一編集部
疑問解決ポータル「超解決」の編集チーム。正確な検証と、現場視点での伝わりやすい解説を心がけています。
Googleスプレッドシートの人気記事ランキング
- 【Googleスプレッドシート】GOOGLEFINANCE関数で株価・為替を取得!リアルタイムデータの呼び出し
- 【Googleスプレッドシート】印刷範囲を指定して印刷!特定範囲だけPDFや紙に出す手順
- 【Googleスプレッドシート】複合グラフで棒と折れ線を同時表示!2軸グラフの作り方
- 【Googleスプレッドシート】FILTER関数で条件に合う行だけ抽出!数式1つで動的な絞り込み
- 【Googleスプレッドシート】フィルタ表示で他の人の表示を変えずに絞り込み!共有時の使い分け
- 【Googleスプレッドシート】重複データを抽出して表示!COUNTIFと条件付き書式の併用
- 【Googleスプレッドシート】新しいスプレッドシートを作成する3つの方法!ドライブ・URL・テンプレート
- 【Googleスプレッドシート】ARRAYFORMULAで列全体に数式を一括適用!セル分の入力を不要に
- 【Googleスプレッドシート】データ範囲を動的に伸縮させる!INDIRECTと参照範囲のコツ
- 【Googleスプレッドシート】共有解除と権限の取り消し!アクセスを完全に閉じる手順
