【问题标题】:How to use OnChange() trigger如何使用 OnChange() 触发器
【发布时间】:2015-01-16 13:12:34
【问题描述】:

我有一个电子表格,以及该电子表格的主副本。 每次用户在单元格中输入数据时,它都会获取新数据并放入主副本。

然而,最近,我注意到一个用户创建了一个新列,该列未被 OnEdit() 捕获。

于是我查了一下,看到了去年实现的 OnChange()。

但是,我不知道如何使用该触发器。

如何检索新的列或行,或用户更改的合并单元格,并将其复制到我的主副本中?我找不到这方面的文档。

【问题讨论】:

    标签: google-apps-script google-sheets triggers


    【解决方案1】:

    要获取对象中的所有方法,您可以使用以下内容:

    function onChange(e){
      for( i in e )
        Logger.log( i );
    }
    

    在此日志记录中,您可以发现有用的 source 属性,它具有以下属性/方法(使用 for( i in e.source) 找到):

    getOwner
    getKey
    removeNamedRange
    revealColumn
    getSheetPermissions
    deleteSheet
    getViewers
    unhideRow
    addEditors
    getSpreadsheetTimeZone
    insertRowBefore
    getSheetId
    setFrozenRows
    setSpreadsheetLocale
    getSpreadsheetLocale
    getId
    copy
    hideColumn
    getActiveRange
    addMenu
    toast
    setColumnWidth
    getLastColumn
    getAs
    insertColumnsAfter
    setSheetPermissions
    setActiveSheet
    getBlob
    removeMenu
    sort
    getRange
    getRangeByName
    getColumnWidth
    hideRow
    inputBox
    removeViewer
    findSheetByName
    insertImage
    autoResizeColumn
    setNamedRange
    getSheetByName
    setActiveCell
    insertSheet
    isWritable
    setSpreadsheetTimeZone
    getNumSheets
    setFrozenColumns
    getSheetProtection
    duplicateActiveSheet
    deleteRow
    isAnonymousWrite
    isAnonymousView
    findSheet
    insertRowAfter
    addEditor
    getName
    unhideColumn
    setRowHeight
    addViewers
    rename
    show
    setActiveRange
    getFrozenRows
    setAnonymousAccess
    addCollaborator
    setActiveSelection
    getSheetValues
    deleteActiveSheet
    removeCollaborator
    getDataRange
    addCollaborators
    deleteRows
    deleteColumn
    toString
    isReadable
    removeEditor
    setName
    insertColumnsBefore
    moveActiveSheet
    getSheets
    getChanges
    appendRow
    getSheetName
    getActiveSelection
    insertRowsBefore
    insertColumnAfter
    getActiveCell
    getActiveSheet
    getEditors
    find
    getRowHeight
    getFormUrl
    getFrozenColumns
    updateMenu
    msgBox
    insertColumnBefore
    getUrl
    getLastRow
    insertRowsAfter
    renameActiveSheet
    setSheetProtection
    deleteColumns
    addViewer
    getCollaborators
    revealRow
    

    【讨论】:

      猜你喜欢
      • 2017-06-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多