スクリプト プロジェクトは、Google Apps Script 内のファイルやリソースのコレクションを表し、単に「スクリプト」と呼ばれることもあります。スクリプト プロジェクトには 1 つ以上のスクリプト ファイルがあります。スクリプト ファイルには、コードファイル(拡張子は .gs
)または HTML ファイル(拡張子は .html
)があります。HTML ファイルに JavaScript と CSS を含めることもできます。
スクリプト エディタで開かれているプロジェクトは常に 1 つのみです。複数のブラウザ ウィンドウやタブで複数のプロジェクトを開くことができます。
プロジェクトの作成と削除
このセクションでは、スタンドアロンの Apps Script プロジェクトまたはコンテナにバインドされた Apps Script プロジェクトを作成および削除する方法について説明します。
スタンドアロン プロジェクトを作成する
Apps Script からスタンドアロン プロジェクトを作成するには:
script.google.com
にアクセスします。- [ New Project] をクリックします。
- スクリプト エディタで [無題のプロジェクト] をクリックします。
- プロジェクトに名前を付けて、[名前を変更する] をクリックします。
Google ドライブからスタンドアロン プロジェクトを作成する
- Google ドライブを開きます。
- [新規] > [その他] > [Google Apps Script] をクリックします。
Google ドキュメント、スプレッドシート、スライドからコンテナにバインドされたプロジェクトを作成する
- Google ドキュメントのドキュメント、Google スプレッドシートのスプレッドシート、または Google スライドのプレゼンテーションを開きます。
- [拡張機能] > [Google Apps Script] をクリックします。
- スクリプト エディタで [無題のプロジェクト] をクリックします。
- プロジェクトに名前を付けて、[名前を変更する] をクリックします。
Google フォームからコンテナにバインドされたプロジェクトを作成する
- Google フォームでフォームを開きます。
- その他アイコン > [スクリプト エディタ] をクリックします。
- スクリプト エディタで [無題のプロジェクト] をクリックします。
- プロジェクトに名前を付けて、[名前を変更する] をクリックします。
clasp
コマンドライン ツールを使用してスタンドアロン プロジェクトを作成する
clasp
は、ターミナルから Apps Script プロジェクトの作成、pull/push、デプロイを行うコマンドライン ツールです。
詳しくは、clasp
を使用したコマンドライン インターフェースのガイドをご覧ください。
コンテナにバインドされたプロジェクトを削除する
- 上記の適切な方法で、コンテナにバインドされたプロジェクトを開きます。
- 左上の [概要] をクリックします。
- 右上の削除アイコン > [完全に削除] をクリックします。
スタンドアロン プロジェクトを削除する
script.google.com
にアクセスします。- 削除するプロジェクトの右側にあるその他アイコン > [削除] > [削除] をクリックします。
プロジェクト内のファイルを管理する
ファイルを作成する
- Apps Script プロジェクトを開きます。
- 左側の [エディタ] > [ を追加] をクリックします。
- 作成するファイルの種類を選択して名前を付けます。
ファイルの削除
- Apps Script プロジェクトを開きます。
- 左側のエディタ アイコン をクリックします。
- 削除するファイルの横にあるその他アイコン > [削除] をクリックします。
Apps Script プロジェクトからファイルをエクスポートする
Apps Script からコードファイルを取り出すには、各ファイルからコードをコピーして任意のテキスト エディタに貼り付けるか、コマンドラインで留め具を使用します。留め具を使用するには、スクリプト プロジェクトのダウンロードをご覧ください。
プロジェクトのタイムゾーンを設定する
Apps Script プロジェクトにはタイムゾーンを設定できます。スクリプトによって実行される関数は、このタイムゾーンを使用します。
- Apps Script プロジェクトを開きます。
- 左側にある [プロジェクトの設定] をクリックします。
- [タイムゾーン] で、使用するタイムゾーンを選択します。
特定の関数でスクリプト プロジェクトのタイムゾーンとは異なるタイムゾーンを使用する場合は、関数内にタイムゾーンを明示的に入力します。たとえば、次のサンプルでは、各関数が Google カレンダーで新しい予定を作成します。最初の関数のデフォルトは、プロジェクトのタイムゾーンです。2 つ目の関数は太平洋時間のタイムゾーンを指定するため、プロジェクトのタイムゾーンに関係なく、太平洋時間でイベントがスケジュールされます。
function createEvent(){
// Creates an event in the script project's time zone and logs the ID
var event = CalendarApp.getDefaultCalendar().createEvent('New test event',
new Date('December 20, 2022 17:00:00'),
new Date('December 20, 2022 18:00:00'));
console.log('Event ID: ' + event.getId());
}
function createEventPacific(){
// Creates an event with a specified time zone and logs the event ID.
var event = CalendarApp.getDefaultCalendar().createEvent('New sample event',
new Date('December 20, 2022 17:00:00 PDT'),
new Date('December 20, 2022 18:00:00 PDT'));
console.log('Event ID: ' + event.getId());
}
複数の Google アカウントに関する問題を解決する
同時に複数の Google アカウントにログインすると、アドオンやウェブアプリにアクセスできないことがあります。マルチログインや、複数の Google アカウントへの同時ログインは、Apps Script、アドオン、ウェブアプリではサポートされていません。
複数のアカウントにログインしている状態で Apps Script エディタを開いた場合は、使用するアカウントの選択を求めるプロンプトが表示されます。
ウェブアプリまたはアドオンを開いたときにマルチログインの問題が発生した場合は、次のいずれかの解決策をお試しください。
- すべての Google アカウントからログアウトし、アクセスしたいアドオンまたはウェブアプリを使用しているアカウントにのみログインします。
- Google Chrome のシークレット ウィンドウまたは同等のシークレット ブラウジング ウィンドウを開き、アクセスするアドオンまたはウェブアプリが含まれている Google アカウントにログインします。