【问题标题】:Spreadsheet rename event with apps script使用应用程序脚本重命名电子表格事件
【发布时间】:2016-12-17 03:09:20
【问题描述】:

是否可以收听“电子表格重命名”事件?

对应的event object 的changeType 等于“OTHER”。它在重命名工作表时有效,但在重命名整个电子表格时无效。

【问题讨论】:

    标签: google-apps-script google-sheets add-on


    【解决方案1】:

    您不能在工作表重命名时运行函数,不。您可以从电子表格绑定脚本中执行此操作,但您需要设置一些属性并级联触发器。这是一个非常粗略的工作示例:

    // Globals
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var name = ss.getName();
    
    // Each edit, check for a rename
    function onEdit() {
    
      // Grab the stored name from opening
      var setName = PropertiesService.getDocumentProperties().getProperty("name");
    
      // Get the current name of the sheet.
      var currentName = SpreadsheetApp.getActiveSpreadsheet().getName();
    
      // If it doesn't match, there's been a rename. Log and reset the stored name.
      if(setName != currentName) {
        Logger.log("Renamed from " + setName + " to " + currentName);
        PropertiesService.getDocumentProperties().setProperty("name", currentName)
        // do something else
      }
    }
    
    // Store the name when the sheet is opened
    function onOpen() {
      var currentName = PropertiesService.getDocumentProperties().setProperty("name", name);
      Logger.log(currentName.getProperty("name"));
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-11-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-08-05
      • 2019-11-16
      相关资源
      最近更新 更多