Office js 适用于多种语言受众的Excel插件格式
使用绑定或当前选择将数据写入excel时,需要根据内容语言使用正确的数字格式 因此,如果内容语言为英语,则以下代码将失败Office js 适用于多种语言受众的Excel插件格式,office-js,excel-addins,Office Js,Excel Addins,使用绑定或当前选择将数据写入excel时,需要根据内容语言使用正确的数字格式 因此,如果内容语言为英语,则以下代码将失败 常量选项={ 单元格格式:[{cells:{row:1},格式:{numberFormat:'#.###,00'}] }; Office.context.document.setSelectedDataAsync(tableData,选项); 例如,一个丑陋的解决方案就是 常量选项={ 单元格格式:[{ 单元格:{列:3}, 格式:{ numberFormat:Offi
常量选项={
单元格格式:[{cells:{row:1},格式:{numberFormat:'#.###,00'}]
};
Office.context.document.setSelectedDataAsync(tableData,选项);
例如,一个丑陋的解决方案就是
常量选项={
单元格格式:[{
单元格:{列:3},
格式:{
numberFormat:Office.context.contentLanguage.startsWith('de')?
'#.###,00': '#,###.00' }
}];
};
Office.context.document.setSelectedDataAsync(tableData,选项);
是否没有类似于
货币
、数字
或类似用户知道表单excel的UI的抽象格式?我不是100%确定,但如果您尝试使用“新”(Office 2016)一波API会怎么样。比如:
Excel.run(function (ctx) {
var sheetName = "Sheet1";
var rangeAddress = "F5:G7";
var numberFormat = [[null, "d-mmm"], [null, "d-mmm"], [null, null]]
var values = [["Today", 42147], ["Tomorrow", "5/24"], ["Difference in days", null]];
var formulas = [[null,null], [null,null], [null,"=G6-G5"]];
var range = ctx.workbook.worksheets.getItem(sheetName).getRange(rangeAddress);
range.numberFormat = numberFormat;
range.values = values;
range.formulas= formulas;
range.load('text');
return ctx.sync().then(function() {
console.log(range.text);
});
}).catch(function(error) {
console.log("Error: " + error);
if (error instanceof OfficeExtension.Error) {
console.log("Debug info: " + JSON.stringify(error.debugInfo));
}
});
示例取自谢谢,我会研究一下。尽管这是一个有点不同的方法。一定要让我们知道新方法是否比旧方法更好,这样我们就可以在那个时候提交一个合适的bug。