イベント オブジェクト

シンプルなトリガー インストール可能なトリガーを使用すると、Apps Script は 特定のイベントが発生したときに関数を自動的に実行します。トリガーが発動すると Apps Script はイベント オブジェクトを引数として関数に渡します。この引数は通常 e。イベント オブジェクトには、発生したイベント、 トリガーされます。たとえば、次のサンプルコードは、単純な onEdit(e) このイベント オブジェクトを使用して Google スプレッドシートのスクリプトで セルが編集されました。

function onEdit(e){
  // Set a comment on the edited cell to indicate when it was changed.
  var range = e.range;
  range.setNote('Last modified: ' + new Date());
}

このページでは、さまざまな種類のイベント オブジェクトのフィールドについて詳しく説明します。 使用できます。

Google スプレッドシートのイベント

Google スプレッドシート固有のさまざまなトリガーを使用すると、ユーザーのアクションにスクリプトが応答できます。 指定することもできます。

開く

シンプルインストール可能
authMode

ScriptApp.AuthMode 列挙型の値。

LIMITED
source

Spreadsheet スクリプトがバインドされている Google スプレッドシート ファイルを表すオブジェクト。

Spreadsheet
triggerUid

このイベントを生成したトリガーの ID(インストール可能なトリガーのみ)。

4034124084959907503
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com

変更

インストール可能
authMode

ScriptApp.AuthMode 列挙型の値。

FULL
changeType

変更のタイプ(EDITINSERT_ROWINSERT_COLUMN, REMOVE_ROW, REMOVE_COLUMN, INSERT_GRID, REMOVE_GRID, FORMATOTHER など)。

INSERT_ROW
source

<ph type="x-smartling-placeholder"></ph> Spreadsheet オブジェクト。スクリプトの送信先となる Google スプレッドシート ファイルを表します。 あります。

Spreadsheet
triggerUid

このイベントを生成したトリガーの ID。

4034124084959907503
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com

編集

シンプルインストール可能
authMode

ScriptApp.AuthMode 列挙型の値。

LIMITED
oldValue

編集前のセルの値(存在する場合)。編集した場合にのみ使用できます 単一のセルです。セルに先行するアクティビティがない場合は未定義になります 説明します。

1234
range

Range オブジェクト 編集されたセルまたはセル範囲を表します。

Range
source

Spreadsheet スクリプトがバインドされている Google スプレッドシート ファイルを表すオブジェクト。

Spreadsheet
triggerUid

このイベントを生成したトリガーの ID(インストール可能なトリガーのみ)。

4034124084959907503
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com
value

編集後の新しいセル値。編集した範囲が 表示されます。

10

フォームの送信

インストール可能
<ph type="x-smartling-placeholder">
authMode

ScriptApp.AuthMode 列挙型の値。

FULL
namedValues

フォーム送信の質問名と値を含むオブジェクト。

{
  'First Name': ['Jane'],
  'Timestamp': ['6/7/2015 20:54:13'],
  'Last Name': ['Doe']
}
range

Range オブジェクト 編集されたセルまたはセル範囲を表します。

Range
triggerUid

このイベントを生成したトリガーの ID。

4034124084959907503
values

スプレッドシートでの表示と同じ順序の値を持つ配列。

['2015/05/04 15:00', 'amin@example.com', 'Bob', '27', 'Bill',
'28', 'Susan', '25']

Google ドキュメントのイベント

トリガーを使用すると、ユーザーがドキュメントを開いたときに Google ドキュメントが応答できます。

開く

シンプルインストール可能
authMode

ScriptApp.AuthMode 列挙型の値。

LIMITED
source

Document オブジェクト スクリプトがバインドされている Google ドキュメント ファイルを表します。

Document
triggerUid

このイベントを生成したトリガーの ID(インストール可能なトリガーのみ)。

4034124084959907503
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com

Google スライドのイベント

トリガーを使用すると、ユーザーがプレゼンテーションを開いたときに Google スライドが応答できます。

開く

シンプル
authMode

ScriptApp.AuthMode 列挙型の値。

LIMITED
source

Presentation オブジェクト スクリプトがバインドされている Google スライド ファイルを表します。

Presentation
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com

Google フォームのイベント

Google フォーム固有のトリガーを使用すると、ユーザーがフォームを編集したときにスクリプトが応答できます。 レスポンスを送信します。

開く

*(シンプルインストール可能
authMode

ScriptApp.AuthMode 列挙型の値。

LIMITED
source

Form オブジェクト スクリプトがバインドされている Google フォーム ファイルを表します。

Form
triggerUid

このイベントを生成したトリガーの ID(インストール可能なトリガーのみ)。

4034124084959907503
user

User オブジェクト アクティブ ユーザーを表します(利用可能な場合) (複雑なセキュリティ上の制限に依存)。

amin@example.com

* このイベントは、ユーザーが回答のためにフォームを開いたときには発生せず、 変更のためにフォームを開いたときに 自動的にトリガーされます

フォームの送信

インストール可能
<ph type="x-smartling-placeholder">
authMode

ScriptApp.AuthMode 列挙型の値。

FULL
response

FormResponse オブジェクト フォームに対するユーザーの回答を全体として表します。

FormResponse
source

Form オブジェクト スクリプトがバインドされている Google フォーム ファイルを表します。

Form
triggerUid

このイベントを生成したトリガーの ID。

4034124084959907503

Google カレンダーの予定

カレンダー トリガーは、ユーザーのカレンダーの予定が更新(作成、 編集、削除)。

これらのトリガーからは、どのイベントが変更されたか、またはどのように変更されたかはわかりません。 代わりに、コードで増分同期オペレーションを行う必要があることを示しています。 カレンダーの最新の変更を取得できます。詳しい説明については 詳しくは、 リソース同期ガイド: Calendar API

Apps Script でカレンダーと同期するには、次の手順を行います。

  1. Calendar Advanced Service を有効にする 構成する必要があります。組み込みの カレンダー サービスでは 見てみましょう
  2. 同期するカレンダーを決定します。カレンダーごとに 最初の同期を実行する Calendar Advanced サービスの Events.list() メソッドを使用します。
  3. 最初の同期の結果は、そのカレンダーの nextSyncToken を返します。 このトークンを後で使用するために保存してください。
  4. カレンダーを示す Apps Script の EventUpdated トリガーが起動したとき イベントの変更、増分同期の実行 保存された nextSyncToken を使用して、影響を受けるカレンダーのこれは、 基本的には別の Events.list()nextSyncToken を指定すると、レスポンスが 追加することもできます。
  5. 同期のレスポンスを調べて、更新されたイベントと コードが適切に応答するようにしますたとえば 変更をログに記録したり スプレッドシートの更新、メール通知の送信などの操作を行う。
  6. そのカレンダー用に保存した nextSyncToken を、返されたものに置き換えます。 増分同期リクエストのこれにより、次の同期オペレーションが強制的に 最新の変更のみが返されます。
で確認できます。

EventUpdated

インストール可能
authMode

次の値: ScriptApp.AuthMode enum。

FULL
calendarId

イベントの更新が発生したカレンダーの文字列 ID。

susan@example.com
triggerUid

このイベントを生成したトリガーの ID。

4034124084959907503

Google Workspace アドオンのイベント

onInstall() トリガーが実行される ユーザーがアドオンをインストールすると自動的に有効になります。

インストール

シンプル
authMode

ScriptApp.AuthMode 列挙型の値。

FULL

Google Chat アプリのイベント

Google Chat のイベント オブジェクトについて詳しくは、 Google Chat アプリとのやり取りを受信して応答する

時間的イベント

時間ドリブンのトリガー (クロックトリガーとも呼ばれます)を使用すると、スクリプトを特定の時刻や 設定します。

時間的制約(インストール可能)
authMode

ScriptApp.AuthMode 列挙型の値。

FULL
day-of-month

131

このプロパティ名にはダッシュが含まれているため、以下を使用してアクセスする必要があります。 e['day-of-month'] を使用します。

31
day-of-week

1(月曜日)~7(日曜日)の間。

このプロパティ名にはダッシュが含まれているため、以下を使用してアクセスする必要があります。 e['day-of-week'] を使用します。

7
hour

023

23
minute

059

59
month

112

12
second

059

59
timezone

タイムゾーン。

UTC
triggerUid

このイベントを生成したトリガーの ID。

4034124084959907503
week-of-year

152

このプロパティ名にはダッシュが含まれているため、以下を使用してアクセスする必要があります。 e['week-of-year'] を使用します。

52
year

年です。

2015