还原为内置函数¶
位置:功能区 EGTools 选项卡 → EGTools 组 → 拆分按钮下拉菜单
把已转换为 EGTools 兼容函数使用的工作簿带回新版 Excel 时,将活动工作簿
所有公式中的 EGTools 函数名(EG.* 等)批量还原为原生内置函数。
还原后即使没有加载项,这些公式也能计算。
操作流程¶
采用与应用旧版兼容相同的安全流程:
保存确认 → 预扫描(按函数汇总对象数量)→ 自动备份
(原名_egbak_<时间>.<扩展名>)→ 转换 → 结果汇总。
转换规则¶
| 对象 | 转换 |
|---|---|
| 一般兼容函数 | EG.函数 / x函数(xSORT/xFILTER/xLET)→ 函数(原生)。对沿用旧版直接替换名的单元格也会重新标记化,强制由原生函数计算 |
| IMAGE | 按来源分支:第一个参数为 https:// 来源时保留原生 IMAGE,其余(本地路径·http://)转换为 EG.IMAGE。引用·公式参数以转换时求值的结果为准判断(求值失败·错误·非字符串则安全地转为 EG.IMAGE)。原生 IMAGE 仅支持 https,因此转换后引用值若变为本地路径,该单元格会变成 #VALUE! — 而 EG.IMAGE 支持所有来源 |
| GROUPBY / PIVOTBY | 将函数名还原为原生,并去掉聚合器参数的引号("SUM" → SUM;仅限原生支持的 16 种聚合器 — TEXTJOIN 等 EGTools 扩展聚合器会被原生拒绝,因此不改动该公式)。即使后面跟有可选参数也会转换 |
_xlpm.*(LET/LAMBDA 参数) |
去除经过旧版后公式中残留的参数保存前缀(xLET(_xlpm.x, …) → LET(x, …))。含 _xlpm. 的公式会被 Excel 拒绝写入,不做此去除则该单元格无法还原。在转换汇总中计入 _xlpm.* 项 |
@(隐式交集) |
新版 Excel 打开旧版文件时加上的 @ 若位于要还原为原生的函数名正前方,会一并去除(TAKE(@xSORT(…),3) → TAKE(SORT(…),3))。不去除的话 @SORT 会把数组坍缩为单一值导致结果错误。单元格引用或非转换对象函数前的 @ 会保留。在转换汇总中计入 @(隐式交集) 项 |
_xll.* / _xludf.*(加载项 UDF 保存前缀) |
去除在未注册加载项函数的环境中打开过而残留的前缀(_xll.xSORT(…) → SORT(…))。尤其解决了定义的名称的公式因残留此前缀而不被转换的问题。仅去除 EGTools 函数前的前缀,不改动其他加载项的函数。在转换汇总中计入 _xll.* 项 |
| 尚未全面推送的函数(IMPORTTEXT/IMPORTCSV) | 已引入但尚未普遍发布的函数(仅限 365 预览通道)在还原前会确认此 Excel 中原生函数是否实际存在,仅在确认后才转换为原生。未确认时按与 IMAGE 相同的方式保留 EGTools 实现(IMPORTTEXT → EG.IMPORTTEXT)。已普遍发布的函数无需此确认,始终转换 |
备注¶
- 若所运行的 Excel 没有对应原生函数(旧版本),还原后的公式会变成
#NAME?, 因此请在返回新版 Excel 时使用此按钮。 - 要重新改回旧版用,请执行应用旧版兼容。