通过应用程序脚本重命名事件的电子表格



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

相应的事件对象的变形类型等于"其他"。当更改重命名表格时,它起作用,但是当整个电子表格重命名时不起作用。

您无法在单板上运行功能,否。您可以通过包含电子表格的脚本进行操作,但是您需要设置一些属性并级联触发器。这是一个非常粗略的工作示例:

// 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"));
}

最新更新