Excel Script需求:创建工作表后将指定单元格设为表名
解决方案
你只需要在现有代码里新增目标单元格地址的常量定义,再在创建工作表的循环中添加设置指定单元格值的逻辑即可。修改后的完整代码如下:
function main(wb: ExcelScript.Workbook) { // Define constants. const LOOKUP_SHEET_NAME: string = "JP PPS"; const LOOKUP_RANGE_ADDRESS: string = "P4:P12"; const TEMPLATE_SHEET_NAME: string = "Template"; // 新增:指定要设置值的目标单元格地址,可按需修改 const TARGET_CELL_ADDRESS: string = "A1"; // 获取查找区域的数值数组 let lws = wb.getWorksheet(LOOKUP_SHEET_NAME); let lrg = lws.getRange(LOOKUP_RANGE_ADDRESS); let lData = lrg.getValues(); // 引用模板工作表 let tws = wb.getWorksheet(TEMPLATE_SHEET_NAME); // 遍历数组,复制模板并命名新工作表 for (let i = 0; i < lData.length; i++) { let nws = tws.copy(ExcelScript.WorksheetPositionType.after, wb.getLastWorksheet()); let nwsName: string = lData[i].toString(); nws.setName(nwsName); // 新增:将目标单元格的值设置为当前工作表名称 nws.getRange(TARGET_CELL_ADDRESS).setValue(nwsName); }; }
关键修改说明
- 新增
TARGET_CELL_ADDRESS常量,你可以根据实际需求修改这个单元格地址(比如改成B2)。 - 在循环内部,完成工作表命名后,通过
getRange()定位指定单元格,再用setValue()将其值设置为当前工作表的名称。
内容的提问来源于stack exchange,提问作者Shorter11
相关产品推荐
相关产品推荐

