如何重新加载 Excel 个自定义函数?
How to reload Excel custom functions?
我已经成功部署了 Excel-Custom-Functions 示例,可以使用新的 JS 函数。
更改 customfunctions.js
中的 code/definition 后,我重新启动了我的网络服务器,启动了 Excel,再次从 Office 加载项页面插入了自定义函数,但仍然得到原始函数。
如果我开始 Excel 没有再次插入样本,功能仍然是已知的!?
如何强制 Excel 删除此类加载项并从头重新加载它?
示例:
该示例包含几个自定义函数及其对应的注册:
Excel.Script.CustomFunctions["CONTOSO"]["ADD42"] = {
...
Excel.Script.CustomFunctions["CONTOSO"]["GETTEMPERATURE"] = {
...
重命名一个函数,并完全删除另一个函数:
Excel.Script.CustomFunctions["CONTOSO"]["ADD42RENAMED"] = {
...
/* Excel.Script.CustomFunctions["CONTOSO"]["GETTEMPERATURE"] = {
...
Excel 之后仍会显示旧元数据。
Excel 为每个加载项缓存以前注册的函数。进行缓存的原因是用户甚至在加载项加载之前就可以查看和触发这些功能(使您的加载项自动加载)。
当您运行以下代码时,缓存中所有先前注册的函数都将被删除并立即替换为您指定的新函数:
Excel.run(function (context) {
context.workbook.customFunctions.addAll();
return context.sync().then(function(){});
}).catch(function(error){});
编辑:如果您在调用上面的代码后仍然看到您认为不应注册的函数,则有两种可能:
- "incorrect" 函数实际上是由不同的加载项注册的(可能是您之前进行的测试)。
Excel.run
调用失败(您可以检查 error
参数以查看这是否是您的问题)
手动清除计算机的注册缓存可能会有用:删除文件夹 AppData\Local\Microsoft\Office。0\Wef\CustomFunctions
-Michael,插件的 PM
我已经成功部署了 Excel-Custom-Functions 示例,可以使用新的 JS 函数。
更改 customfunctions.js
中的 code/definition 后,我重新启动了我的网络服务器,启动了 Excel,再次从 Office 加载项页面插入了自定义函数,但仍然得到原始函数。
如果我开始 Excel 没有再次插入样本,功能仍然是已知的!?
如何强制 Excel 删除此类加载项并从头重新加载它?
示例: 该示例包含几个自定义函数及其对应的注册:
Excel.Script.CustomFunctions["CONTOSO"]["ADD42"] = {
...
Excel.Script.CustomFunctions["CONTOSO"]["GETTEMPERATURE"] = {
...
重命名一个函数,并完全删除另一个函数:
Excel.Script.CustomFunctions["CONTOSO"]["ADD42RENAMED"] = {
...
/* Excel.Script.CustomFunctions["CONTOSO"]["GETTEMPERATURE"] = {
...
Excel 之后仍会显示旧元数据。
Excel 为每个加载项缓存以前注册的函数。进行缓存的原因是用户甚至在加载项加载之前就可以查看和触发这些功能(使您的加载项自动加载)。
当您运行以下代码时,缓存中所有先前注册的函数都将被删除并立即替换为您指定的新函数:
Excel.run(function (context) {
context.workbook.customFunctions.addAll();
return context.sync().then(function(){});
}).catch(function(error){});
编辑:如果您在调用上面的代码后仍然看到您认为不应注册的函数,则有两种可能:
- "incorrect" 函数实际上是由不同的加载项注册的(可能是您之前进行的测试)。
Excel.run
调用失败(您可以检查error
参数以查看这是否是您的问题)
手动清除计算机的注册缓存可能会有用:删除文件夹 AppData\Local\Microsoft\Office。0\Wef\CustomFunctions
-Michael,插件的 PM