如何根据带有日期选择器的单元格更改 google 工作表选项卡名称

How to change google sheets tab name depending on a cell with a date picker

我正在尝试制作一个 sheet 当您更改单元格中的文本时它会更改当前选项卡的名称。

我目前有一个简单的脚本,仅适用于文本,但我正在尝试使用内置的日期选择器。例如,当我输入“test”时,选项卡重命名为“test”,但当我使用日期选择器并选择“4-6-22”时,它会将选项卡名称更改为“44657”。有没有办法让它将标签重命名为“4-6-22”?

这是我正在使用的脚本

function onEdit(e) {
  if(e.range.getA1Notation() == 'B3'){
    SpreadsheetApp.getActiveSheet().setName(e.value);
  }
}

可能这会起作用:

function onEdit(e) {
  if(e.range.getA1Notation() == 'B3'){
    SpreadsheetApp.getActiveSheet().setName(e.range.getDisplayValue());
  }
}

如果你想要特定的格式

function onEdit(e) {
  if(e.range.getA1Notation() == 'B3'){
    if (!isNaN(Date.parse(e.value))){
      SpreadsheetApp.getActiveSheet().setName(Utilities.formatDate(new Date(e.range.getDisplayValue()), Session.getScriptTimeZone(), "MMM dd yyyy"))
    }
    else{
      SpreadsheetApp.getActiveSheet().setName(e.value);
    }
  }
}