【发布时间】:2020-07-31 18:25:12
【问题描述】:
这是我尝试使用 Excel Javascript API 完成的任务:
- 我的工作簿中有
Sheet1和Sheet2。在Sheet2中可能有一些对Sheet2中单元格的引用,但我不知道它们在哪里,甚至不知道它们是否存在。 - 我想将
Sheet1替换为不同的工作表(例如Sheet3),但我不希望Sheet2上对Sheet1的单元格的引用中断。 -
Sheet1和Sheet2都具有任意数量的数据,并且数量不限。
我的问题:我怎样才能以有效的方式仅使用 Excel Javascript API 执行上述操作?
以下是我考虑过的一些解决方案(一些我已经尝试过):
- 删除
Sheet1。将Sheet3重命名为Sheet1。这不起作用,因为它会导致Sheet2中对Sheet1的引用变得未定义。 - 在删除和重命名之前,在
Sheet2中查找Sheet1的所有实例并将其替换为Sheet3。我担心这将不够有效,因为它必须查看所有单元格。 - 暂停计算,然后删除,然后重命名,然后恢复计算。这不起作用,因为暂停计算显然不会暂停这种引用更新,因此
Sheet2到Sheet1中的引用仍然中断。 - 将所有单元格数据从
Sheet3复制到Sheet1。但是,因为我们还需要复制格式,据我所知,这不能批量完成。我认为我们不能足够有效地做到这一点,因为可能存在任意数量的数据。
任何反馈将不胜感激。如果没有解决方案,我担心它可能会在我们的插件上花费一个月左右的时间:(
【问题讨论】:
-
如果您能在回答问题之前分享更多关于您的场景的信息,那就太好了。你认为你可以从 sheet3 复制内容并覆盖 sheet1 中的内容吗?
-
感谢您的反馈。我在场景中添加了更多细节,并扩展了解决方案以及复制数据似乎不起作用的原因。
标签: javascript excel office365 office-js excel-addins