【发布时间】:2019-01-04 15:34:14
【问题描述】:
我使用 Excel 插件并使用 office.js 库。我的插件应该在服务器上保存一些数据,在用户按下任务窗格上的“SaveData”按钮后输入到单元格中。一切正常,除了用户在单元格中输入内容并立即(不按 Enter 或单击另一个单元格)单击按钮“SaveData”的情况。我收到错误代码“InvalidOperationInCellEditMode”和描述“Excel 处于单元格编辑模式...”。
我添加了以下代码来捕获此异常并在任务窗格上显示消息,但它不能被认为是用户友好的行为。
function SaveData() {
Excel.run(function (ctx) {
return ctx.sync().then(function() {
// HERE I HAVE SOME CODE THAT WORKS IF CELL IS NOT BEING EDITED
});
}).catch(function(error) {
console.log("Error: " + error);
if (error instanceof OfficeExtension.Error) {
console.log("Debug info: " + JSON.stringify(error.debugInfo));
// HERE I HAVE SOME CODE THAT SHOWS MESSGE ON TASK PANE
}
});
}
当用户编辑单元格时,有什么方法可以阻止任务窗格,就像它适用于某些原生 Excel 按钮一样?
UPDATE1:是否可以通过API完成用户的编辑并在此之后执行代码?
【问题讨论】:
标签: excel office-js excel-addins