You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Google Apps Script,实现复制工作表后弹窗重命名?

实现带命名弹窗的工作表复制功能

完全可以实现这个需求,修改后的脚本会在运行时弹出输入框让你指定新工作表的名称,同时处理空输入和重复名称等异常情况:

function TemplateDuplication() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const activeSheet = ss.getActiveSheet();
  
  // 弹出输入框获取新工作表名称
  const newSheetName = Browser.inputBox('为新工作表命名', '请输入新工作表的名称:', Browser.Buttons.OK_CANCEL);
  
  // 判断用户是否点击取消或输入为空
  if (newSheetName === 'cancel' || newSheetName.trim() === '') {
    SpreadsheetApp.getUi().alert('未输入有效名称,操作已取消');
    return;
  }
  
  try {
    // 复制当前工作表并移动到左侧第一位
    const newSheet = activeSheet.copyTo(ss);
    ss.setActiveSheet(newSheet);
    ss.moveActiveSheet(1);
    
    // 重命名新工作表
    newSheet.setName(newSheetName);
  } catch (e) {
    // 处理重复名称、非法字符等错误
    SpreadsheetApp.getUi().alert('操作失败:' + e.message);
  }
}

关键功能说明:

  • 用Browser.inputBox()创建带输入框的弹窗,支持确认/取消操作
  • 增加空输入和取消操作的判断,避免无效执行
  • 通过try-catch捕获重命名时的异常(比如名称重复、包含特殊字符)
  • 调整执行逻辑,先复制工作表再移动并重命名,流程更清晰

内容的提问来源于stack exchange,提问作者DennisAlexander

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.23 11:48:19