如何修改非活跃Google Sheet中指定工作表的标签索引顺序
解决方案
错误原因
Sheet类不存在moveTo()方法,你调用了不存在的对象方法,所以触发了TypeError报错。
正确实现方法
使用Spreadsheet类内置的moveSheetToPosition()方法完成工作表位置调整,该方法接收两个入参:第一个为需要移动的Sheet对象,第二个为目标位置(从1开始计数,和getIndex()返回的索引规则一致)。
示例代码
// 声明目标表格ID const TARGET_SPREADSHEET_ID = '123456789'; // 声明待移动的工作表名称 const TARGET_SHEET_NAME = 'sheet_name'; // 获取目标表格实例 const targetSs = SpreadsheetApp.openById(TARGET_SPREADSHEET_ID); // 获取待移动的工作表实例 const targetSheet = targetSs.getSheetByName(TARGET_SHEET_NAME); // 将工作表移动到第1位 targetSs.moveSheetToPosition(targetSheet, 1); // 验证调整结果 Logger.log(targetSheet.getIndex()); // 预期输出为1
内容的提问来源于stack exchange,提问作者Kenton Sparks
相关产品推荐
相关产品推荐

