typescript 在office脚本中选择特定的工作表

a1o7rhls  于 2023-05-19  发布在  TypeScript
关注(0)|答案(1)|浏览(146)

在我的工作簿中,有一些工作表的标题可以是“PL -平面”,也可以是“平面”
这是我一直在PL -平面工作表中使用的代码,但我更喜欢使用if语句,这样我就可以选择这两个工作表中的任何一个,因为剩下的代码在两个工作表之间是相同的。还存在这两种片材都存在的情况。对解决这个问题的多种方法持开放态度

function main(workbook: ExcelScript.Workbook) {
        // Select the worksheet named "PL -FLAT"
        let flatSheet = workbook.getWorksheet('PL -FLAT');
        flatSheet.activate();

我尝试使用?运算符,但编写if语句失败

dgtucam1

dgtucam11#

根据getWorksheet()的文档,这应该与if一起工作。让我给你看看代码:

let flatSheet = workbook.getWorksheet('PL -Flat');
  
if (!flatSheet) {
  flatSheet = workbook.getWorksheet('FLAT');
}

if (flatSheet) {
  flatSheet.activate();
}

另一种方法是使用getWorksheets获取所有工作表的列表,并根据您要查找的名称选择正确的工作表。

let allSheets = workBook.getWorksheets();
let flatSheet = allSheets.find(s => s.getName() === 'PL -Flat');
if (!flatSheet) {
  flatSheet = allSheets.find(s => s.getName() === 'Flat');
}

if (flatSheet) {
  flatSheet.activate();
}

相关问题