无法使用 Excel JavaScript API 设置 NumberFormat

Tlu*_*her 2 javascript excel office-js

我正在使用 Excel Javascript API,在搜索文档后,仍然找不到我想要实现的解决方案。

因此,我想将所有内容设置为数字格式“文本”,这样 Excel 的自动格式设置就不会与任何单元格的内容混淆(不会删除前导零或更改日期格式)。

文档建议通过以下方式更改格式:

Worksheets("Sheet1").Range("A17").NumberFormat = "General"

但工作表对象似乎不包含 Range 方法。

相反,我尝试在我的表上使用 getRange 方法,如下所示:

constructionTable.getRange().NumberFormat = "Text"

这没有引发任何错误,但似乎没有做任何事情。

格式化表格范围以前适用于这样的事情:

constructionTable.getRange().format.autofitColumns()

所以我还检查了是否constructionTable.getRange().range.format包含名为 NumberFormat 或 numberFormat 的方法,但它没有:(

有人在这方面取得过成功吗?

Ray*_* Lu 5

欢迎使用 Office JS,Tluther。是的,工作表没有numberFormatAPI。如果您想设置整个工作表,您可以使用getUsedRange()获取工作表中使用的范围。可以使用 range.numberFormat = '@' 将其设置为文本;

这是示例代码:

  await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Sample");

    const range = sheet.getUsedRange();
    range.numberFormat = '@';
    await context.sync();
  });
Run Code Online (Sandbox Code Playgroud)

文档可以在这里找到