无法使用Excel JavaScript API设置NumberFormat。

问题描述 投票:0回答:1

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

所以我想把所有的数字格式设置为 "文本",这样Excel的自动格式化就不会对任何单元格的内容造成干扰(不能删除前导零或改变日期格式)。

文档中建议通过改变格式。

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

但似乎sheet对象并不包含Range方法。

我试着在我的表上使用getRange方法,就像这样。

constructionTable.getRange().NumberFormat = "Text"

这没有抛出任何错误,但似乎没有任何作用。

之前格式化表格范围对这样的东西是有效的。

constructionTable.getRange().format.autofitColumns()

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

有人成功地做到了这一点吗?

javascript excel office-js
1个回答
3
投票

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

这里是示例代码。

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

    const range = sheet.getUsedRange();
    range.numberFormat = '@';
    await context.sync();
  });

文件可以在下面找到 此处

© www.soinside.com 2019 - 2024. All rights reserved.