URLをコピーしました!
スキルアップを始める!

GAS(Google Apps Script)の function XXXXXX(e) の「e」とは?

GAS(GoogleAppsScript)
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

関数定義 function XXXXXX(e) の「e」とは?

GAS(Google Apps Script)における「e」は、イベントオブジェクト(Event Object)を表します。GASでは、特定のイベントが発生した際に関数が実行されるトリガーを設定することができます。その際、イベントオブジェクトは自動的に関数に渡されます。

例えば、スプレッドシートのセルが編集された時に関数が実行される場合、以下のようにトリガーを設定することができます。

function onEdit(e) {
  var range = e.range; // 編集されたセルの範囲を取得
  var value = range.getValue(); // 編集されたセルの値を取得
  // その他の処理...
}

この場合、onEdit関数がスプレッドシートのセルが編集される度に実行されます。イベントオブジェクトはeという名前の引数として関数に渡されます。eを介してイベントに関連する情報にアクセスすることができます。

イベントオブジェクトには、イベントに関連する様々なプロパティ(範囲、値、編集者など)が含まれています。具体的なプロパティは、イベントの種類によって異なります。

なお、「e」はイベントオブジェクトを参照するための変数名であり、任意の変数名を使用することもできます。ただし、一般的にはeeventなどがよく使われます。

「e」の中身をログで見る

「e」の中身を取得するためにログを設定します。下記は、ログを取るだけの関数です。

function onEdit(e) {
  console.log(e);
}
デバッグ	ログ出力のサイズが大きすぎます。出力を切捨てます。 { user: 
   { toString: [Function],
     getUserLoginId: [Function],
     getEmail: [Function],
     getUsername: [Function],
     email: 'XXXX.XXXXXXX@gmail.com',
     nickname: 'XXXXX.XXXXX' },
  value: 'テスト',
  source: 
   { toString: [Function],
     isReadable: [Function],
     isWritable: [Function],
     getName: [Function],
     getKey: [Function],
     setName: [Function],
     getId: [Function],
     copy: [Function],
     getOwner: [Function],
     rename: [Function],
     addDeveloperMetadata: [Function],
     getActiveSheet: [Function],
     setActiveSheet: [Function],
     setAnonymousAccess: [Function],
     getBandings: [Function],
     setRecalculationInterval: [Function],
     getRecalculationInterval: [Function],
     createTextFinder: [Function],
     getDeveloperMetadata: [Function],
     insertDataSourceSheet: [Function],
     getDataSourceSheets: [Function],
     getDataSources: [Function],
     refreshAllDataSources: [Function],
     setSpreadsheetTheme: [Function],
     resetSpreadsheetTheme: [Function],
     getSpreadsheetTheme: [Function],
     deleteActiveSheet: [Function],
     addCollaborators: [Function],
     deleteSheet: [Function],
     duplicateActiveSheet: [Function],
     findSheetByName: [Function],
     getSheetByName: [Function],
     getRangeByName: [Function],
     getNumSheets: [Function],
     insertSheet: [Function],
     moveChartToObjectSheet: [Function],
     moveActiveSheet: [Function],
     removeNamedRange: [Function],
     renameActiveSheet: [Function],
     setNamedRange: [Function],
     getNamedRanges: [Function],
     setSpreadsheetLocale: [Function],
     getSpreadsheetLocale: [Function],
     setSpreadsheetTimeZone: [Function],
     getSpreadsheetTimeZone: [Function],
     getProtections: [Function],
     addCollaborator: [Function],
     getCollaborators: [Function],
     isAnonymousView: [Function],
     isAnonymousWrite: [Function],
     removeCollaborator: [Function],
     setMaxIterativeCalculationCycles: [Function],
     getIterativeCalculationConvergenceThreshold: [Function],
     setIterativeCalculationEnabled: [Function],
     getMaxIterativeCalculationCycles: [Function],
     setIterativeCalculationConvergenceThreshold: [Function],
     isIterativeCalculationEnabled: [Function],
     insertSheetWithDataSourceTable: [Function],
     getSheets: [Function],
     getDataSourceRefreshSchedules: [Function],
     createDeveloperMetadataFinder: [Function],
     waitForAllDataExecutionsCompletion: [Function],
     getPredefinedSpreadsheetThemes: [Function],
     getUrl: [Function],
     addMenu: [Function],
     removeMenu: [Function],
     getChanges: [Function],
     msgBox: [Function],
     inputBox: [Function],
     findSheet: [Function],
     show: [Function],
     updateMenu: [Function],
     getFormUrl: [Function],
     toast: [Function],
     find: [Function],
     sort: [Function],
     getCurrentCell: [Function],
     getActiveRange: [Function],
     getActiveRangeList: [Function],
     getSelection: [Function],
     setCurrentCell: [Function],
     setActiveRange: [Function],
     setActiveRangeList: [Function],
     deleteColumn: [Function],
     deleteColumns: [Function],
     getRangeList: [Function],
     getActiveCell: [Function],
     setActiveCell: [Function],
     getSheetName: [Function],
     getDataSourcePivotTables: [Function],
     autoResizeColumn: [Function],
     setColumnWidth: [Function],
     setFrozenColumns: [Function],
     setFrozenRows: [Function],
     setRowHeight: [Function],
     getSheetPermissions: [Function],
     setSheetPermissions: [Function],
     getSheetProtection: [Function],
     setSheetProtection: [Function],
     getDataSourceTables: [Function],
     getDataSourceFormulas: [Function],
     getActiveSelection: [Function],
     getLastColumn: [Function],
     getDataRange: [Function],
     getColumnWidth: [Function],
     getRowHeight: [Function],
     isRowHiddenByUser: [Function],
     isColumnHiddenByUser: [Function],
     isRowHiddenByFilter: [Function],
     getSheetValues: [Function],
     getFrozenRows: [Function],
     getFrozenColumns: [Function],
     insertColumnAfter: [Function],
     insertColumnBefore: [Function],
     insertColumnsAfter: [Function],
     insertColumnsBefore: [Function],
     insertImage: [Function],
     insertRowAfter: [Function],
     insertRowBefore: [Function],
     insertRowsAfter: [Function],
     insertRowsBefore: [Function],
     revealColumn: [Function],
     unhideColumn: [Function],
     setActiveSelection: [Function],
     getRange: [Function],
     getImages: [Function],
     deleteRow: [Function],
     deleteRows: [Function],
     getLastRow: [Function],
     getSheetId: [Function],
     hideColumn: [Function],
     hideRow: [Function],
     revealRow: [Function],
     unhideRow: [Function],
     appendRow: [Function],
     getEditors: [Function],
     removeEditor: [Function],
     removeViewer: [Function],
     addViewers: [Function],
     getViewers: [Function],
     addEditor: [Function],
     addEditors: [Function],
     addViewer: [Function],
     getAs: [Function],
     getBlob: [Function] },
  range: 
   { toString: [Function],
     setNumberFormat: [Function],
     getNumberFormat: [Function],
     getFilter: [Function],
     setComment: [Function],
     getComment: [Function],
     clear: [Function],
     getValue: [Function],
     isBlank: [Function],
     merge: [Function],
     check: [Function],
     setValue: [Function],
     offset: [Function],
     sort: [Function],
     copyTo: [Function],
     setValues: [Function],
     addDeveloperMetadata: [Function],
     setFontSize: [Function],
     getDataTable: [Function],
     getDataSourceUrl: [Function],
     getFontSize: [Function],
     getBandings: [Function],
     createTextFinder: [Function],
     getDeveloperMetadata: [Function],
     getDataSourcePivotTables: [Function],
     getDataSourceTables: [Function],
     getDataSourceFormulas: [Function],
     getLastColumn: [Function],
     setNote: [Function],
     getGridId: [Function],
     setWrap: [Function],
     getSheet: [Function],
     activate: [Function],
     breakApart: [Function],
     getEndRow: [Function],
     setBorder: [Function],
     setWraps: [Function],
     getWrap: [Function],
     getWraps: [Function],
     randomize: [Function],
     autoFill: [Function],
     uncheck: [Function],
     getBorders: [Function],
     isChecked: [Function],
     setBackground: [Function],
     setFontWeights: [Function],
     setBackgrounds: [Function],
     getBackgroundColors: [Function],
     activateAsCurrentCell: [Function],
     deleteCells: [Function],
     getNextDataCell: [Function],
     getDataRegion: [Function],
     getFormulaR1C1: [Function],
     getFormulasR1C1: [Function],
     getDataSourceFormula: [Function],
     getNumberFormats: [Function],
     insertCells: [Function],
     setFormulas: [Function],
     setFormulaR1C1: [Function],
     setFormulasR1C1: [Function],
     setBackgroundColors: [Function],
     getDisplayValue: [Function],
     getDisplayValues: [Function],
     mergeAcross: [Function],
     mergeVertically: [Function],
     isPartOfMerge: [Function],
     setBackgroundObject: [Function],
     getBackgroundObject: [Function],
     getBackgrounds: [Function],
     getBackgroundObjects: [Function],
     setBackgroundRGB: [Function],
     setComments: [Function],
     setFontColor: [Function],
     setFontColorObject: [Function],
     getEndColumn: [Function],
     setFontFamilies: [Function],
     setFontLine: [Function],
     setFontLines: [Function],
     setFontSizes: [Function],
     setFontStyle: [Function],
     setFontStyles: [Function],
     setFontWeight: [Function],
     setHorizontalAlignments: [Function],
     setNumberFormats: [Function],
     setVerticalAlignments: [Function],
     copyValuesToRange: [Function],
     copyFormatToRange: [Function],
     getFontColor: [Function],
     getFontColorObject: [Function],
     getFontColors: [Function],
     getFontColorObjects: [Function],
     getFontFamilies: [Function],
     getFontLine: [Function],
     getFontLines: [Function],
     getFontSizes

ログを取ると、eには様々なデータが格納されていることが分かります。

まとめ

なお、「e」は引数の名前であり、任意の有効な識別子を使用することができます。コード全体の文脈によって、引数の目的や使用方法が異なる場合もあります。

Kindle Unlimited 会員は無料で購読できます
購読はこちら
Kindle Unlimited 会員は無料で購読できます
購読はこちら