我正在尝试使用问题中所述的 Office.js API 合并一些单元格。我使用 Visual Studio 在项目中创建了一个新的网络添加。我保留了生成的项目,并添加了一个带有单击处理程序的按钮来合并单元格,这里是事件处理程序的代码。
function mergingCells() {
Excel.run(function (ctx) {
var sheet = ctx.workbook.worksheets.getActiveWorksheet();
var range = sheet.getRange('A1:D2');
range.merge(false);
return ctx.sync().then(function () {
showNotification('Merging done',
'Merged range is ' + range.address);
});
}).catch(errorHandler);
}
您的代码中存在一个错误,即未在.then
. 但是,如果我在同步之前删除range.address
, 或调用range.load("address")
,则代码确实有效。
我想知道的一件事是:您使用的是什么版本的 Office?如果您使用的是 Office 2016 RTM(不是基于订阅的 Office 365),则合并方法可能不可用(它只是 的一部分ExcelApi 1.2
,而不是ExcelApi 1.1
RTM 附带的)。
您可以在 IntelliSense 中查看特定 API 属于哪个 API 集:
有关Office 版本/风味的更多信息,请参阅https://dev.office.com/docs/add-ins/develop/office-versions。
有关Office JS 版本控制和要求集的详细信息,请参阅https://dev.office.com/docs/add-ins/develop/office-js-versioning。
不幸的是,Office 2016 的 RTM 版本没有区分 API 不可用和其他一些错误;所以他们都遇到InvalidArgument
(但不是之后的版本)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句