在 Excel 桌面中创建和设置时,无法在 Excel Online 中检索 Office.Settings

问题描述

根据 API 文档,Office.Settings 对象按插件和文档保存。也就是说,它们仅对创建它们的加载项可用,并且只能从保存它们的文档中使用。

我对 Office.Settings 界面有点困惑。我在 ScriptLab 插件中创建了一个要点,我在其中设置了 2 个设置对象(查询查询 ID),然后检索它们(将它们记录到控制台)。

要点:https://gist.github.com/VivianVenter/e5489628384f96f2d3bf9a50aace8728

如果我在 Excel 桌面上运行这个要点,那么我可以创建设置并成功检索它们。如果我保存此工作簿并在 Excel Online 中打开它并再次运行 gist,则无法检索设置,它会为两个设置对象返回 null。

据我所知,ScriptLab 插件对于桌面版和在线版是相同的,我是否遗漏了什么,或者是 OfficeJS 的意图是不使在线版本中的设置可用/可见(如果它被创建)并在桌面版中设置?

找到设置桌面: The settings objects was found in Excel Desktop

在线设置为空: The settings objects was NOT found in Excel Online

解决方法

Office 加载项的设置是根据加载项的 ID 存储的。 一旦通过侧加载安装,每次都会为加载项分配一个新 ID。 这意味着您无法在开发时同步多个平台上的设置。

将加载项提交到 AppSource 后,来自 AppSource 的静态 ID 将分配给加载项,并在从 AppSource 安装加载项时使用。

因此,您应该将加载项提交到 AppSource 以测试/实现此功能。