我正在使用 Office JS API 开发 Excel 加载项。当表对象已插入范围边界内时,更新绑定(bind)类型“范围”的值时遇到问题。
例如,我在 A1:C3 上有一个绑定(bind),并且在 Excel 用户界面中插入了一个表格。 Insert -> Table
at B2:C3 with My table has headers
检查。
使用以下函数更新该范围的原始值似乎删除了表对象。
或者,如果绑定(bind)范围小于表对象,即。在表格对象的边界内绑定(bind),表格和格式仍然存在。
var bindingId = "123";
var newValue = [["123","123","123"], ["123","123","123"], ["123","123","123"]];
return Excel.run(function (ctx) {
var binding = ctx.workbook.bindings.getItem(bindingId);
var range = binding.getRange().load('values, address');
return ctx.sync().then(function () {
range.values = newValue;
return ctx.sync();
});
});
最佳答案
返回 table
来自您的绑定(bind)的对象,应该使用 bindingObject.getTable()
而不是 bindingObject.getRange()
.
一旦你有了一个table
对象,你就可以使用table.rows.add()
在保留现有表的同时添加一行或多行的方法。
关于javascript - Office Excel JS - 更改表格对象的范围值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46331104/