Excel插件实时更改

我正在寻找一个侦听器/事件,当用户在Excel中对某个单元格进行一些更改时会触发,这样我的加载项可以在后台执行一些处理,即通过服务调用保存后端中的更改。

目前,当用户单击加载项中的发布button时,通过服务调用将数据保存在一组行中。 但是,如果用户不需要这样做,那么一旦用户改变了某个特定的行就会被保存起来。

Office.js中有这样的function吗? 或者,也许有一种方法来模拟它?

您可以使用Document.SelectionChanged事件检测更改,但这可能非常嘈杂。 点击屏幕会触发这个,所以你要确保你需要一些相当有效的代码来检测实际的变化,否则你最终会不必要的放慢用户体验。

一个更好的select是绑定到你想要跟踪的数据并使用Binding.bindingDataChanged事件。 这只会在您关心的数据发生变化时触发。

最好的select可能是重新考虑整体情况。 支持使用加载项将数据保存到后端,但对用户来说不是一个非常光滑的体验。 更清晰的实现可能是利用graphics的Excel API来处理文档在OneDrive中更改时发生的更改。 这将使整个过程对用户透明。