使用 Excel JavaScript API 查找区域中的字符串

本文提供了一个代码示例,该示例使用 Excel JavaScript API 查找某个范围内的字符串。 有关对象支持的属性和方法 Range 的完整列表,请参阅 Excel.Range 类

注意

The Excel JavaScript API 没有“Cell”对象或类。 相反,Excel JavaScript API 将所有 Excel 单元格定义为 Range 对象。 Excel UI 中的单个单元格转换为 Excel JavaScript API 中包含一个单元格的 Range 对象。 单个 Range 对象也可以包含多个连续的单元格。 若要了解详细信息,请参阅使用 Excel JavaScript API 处理单元格

匹配区域中的字符串

Range 对象具有 find 方法在区域内搜索指定字符串。 返回有匹配文本的第一个单元格区域。

以下代码示例查找值等于字符串 食品 的第一个单元格,并将其地址记录到控制台。 请注意,若指定的字符串不存在于区域中,find 将引发 ItemNotFound 错误。 若您预计到指定的字符串可能不存在区域中,则可使用 findOrNullObject 方法,以便您的代码可正常处理该情况。

await Excel.run(async (context) => {
    let sheet = context.workbook.worksheets.getItem("Sample");
    let table = sheet.tables.getItem("ExpensesTable");
    let searchRange = table.getRange();
    let foundRange = searchRange.find("Food", {
        completeMatch: true, // Match the whole cell value.
        matchCase: false, // Don't match case.
        searchDirection: Excel.SearchDirection.forward // Start search at the beginning of the range.
    });

    foundRange.load("address");
    await context.sync();

    console.log(foundRange.address);
});

在表示一个单元格的区域调用 find 方法时,将在整个工作表进行搜索。 搜索开始于该单元格,并按照 SearchCriteria.searchDirection 指定的方向进行,如有需要在工作表结束的地方换行。

另请参阅