Office365 如何在office excel加载项中设置金额格式

Office365 如何在office excel加载项中设置金额格式,office365,office-js,office-addins,Office365,Office Js,Office Addins,我正在使用office.js、javascript和react开发excel加载项。希望在列中显示不同的十进制数格式。 考虑响应值在Excel列上显示的接收值: 23.233456789 -> 23.23 24.123456 -> 24.12 26.98576362 -> 26.98 因此,在单元格列上的值应该显示为23.23、24.12、26.98,在选择特定单元格时,它应该显示为23.23->23.233456789等的总量。 是否可以使用office.js进行此类格式化

我正在使用office.js、javascript和react开发excel加载项。希望在列中显示不同的十进制数格式。 考虑响应值在Excel列上显示的接收值:

23.233456789 -> 23.23
24.123456 -> 24.12
26.98576362 -> 26.98
因此,在单元格列上的值应该显示为23.23、24.12、26.98,在选择特定单元格时,它应该显示为23.23->23.233456789等的总量。 是否可以使用office.js进行此类格式化?请帮忙找出解决办法。
提前谢谢。

我对office.js不太清楚,但您可以通过一个简单的取整函数来实现。这将使数字四舍五入到最多两位小数

函数轮号(num){
返回数学整数(num*100)/100
}
您可以使用该属性执行此操作。这里有一个例子

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

    const formats = [["0.00", "0.00"], ["0.00", "0.00"], ["0.00", "0.00"]];

    const range = sheet.getRange("D3:E5");
    range.numberFormat = formats;
    await context.sync();
  });
}

选择单元格时,完整的实际值将显示在公式栏中。

假设您引用的是表格列,我就是这样做的:

table.columns.getItem(columnName).getRange().numberFormat = [["#,##0.00"]];

虽然它基本上适用于任何您可以
getRange()
从中选择的内容。

是的,舍入是选项,但在选择单元格时,它应该显示整位数。这就是问题所在。谢谢你,瑞克!我会尽力让你知道的谢谢你!