在这个链接中,它说
在开发和测试期间,您可以通过删除文件夹来手动清除计算机的注册元数据缓存
<user>\AppData\Local\Microsoft\Office\16.0\Wef\CustomFunctions
。
然后我进行如下测试:
我在工作簿的服务器中加载了
manifest.xml
指向原始文件的指向。customfunctions.js
关闭工作簿后,文件会自动保存在...\Wef\CustomFunctions\V1
.我通过
customfunctions.js
替换在我的服务器中手动修改.Excel.Script.CustomFunctions["CONTOSO"]["ADD42"]
Excel.Script.CustomFunctions["CONTOSO"]["ADD42NEW"]
我打开一个新工作簿,在一个单元格中,在 enter 之后
=contoso.
,IntelliSense 显示给我,contoso.add42
而不是add42new
. 输入后=contoso.add42(5;4)
,单元格显示#GETTING_DATA
,不返回值。这是可以理解的,因为它适用于不再存在的功能。如果我们单击另一个单元格并输入例如 ,
=2+3
我们会看到工作簿已刷新,并#GETTING_DATA
变为#NAME?
。现在 IntelliSense 显示contoso.add42new
而不是contoso.add42
.
最后,我认为可能存在一个错误:当我们打开工作簿时,IntelliSense 应该给出当前customfunctions.js
.
实际上,理想的是工作簿中的自定义函数始终与customfunctions.js
. 如果没有这个错误,今天我们仍然需要关闭工作簿并重新打开工作簿才能更新。有谁知道是否有一种解决方法可以使打开的工作簿中的自定义函数保持动态更新?是否有一个令人耳目一新的触发器,允许我们在打开的工作簿中从当前更新自定义函数customfunctions.js
?