找回密码
 立即注册

QQ登录

只需一步,快速开始

qnsh

初级会员

14

主题

27

帖子

261

积分

初级会员

积分
261
qnsh
初级会员   /  发表于:2023-7-13 13:40  /   查看:1865  /  回复:6
本帖最后由 Joestar.Xu 于 2023-7-14 11:45 编辑

有没有人遇到自定义的公式例如"FUNC("ABC","123")"导出excel后在新版本Office里面显示为“=@FUNC("ABC","123")”。怎么设置可以去掉@符号吗?

6 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-13 18:07:04
沙发
您好,自定义函数导出到Excel后无论有没有@符号都无法成功运算,会显示为#NAME,您为什么想要去掉这个@符号呢?
回复 使用道具 举报
qnsh
初级会员   /  发表于:2023-7-14 09:04:43
板凳
Joestar.Xu 发表于 2023-7-13 18:07
您好,自定义函数导出到Excel后无论有没有@符号都无法成功运算,会显示为#NAME,您为什么想要去掉这个@符号 ...

导出后可能在Excel进行了编辑,再导入到spreadjs的时候就多了一个@与原始的公式不一致了
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-14 11:40:09
地板
您好,问题已重现,这边调研一下,后续有进展我会在本贴中回复您。

本帖先做保留处理了。
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-17 15:02:58
5#
您好,经调研,这是设计使然,请查看这个链接中的内容:https://support.microsoft.com/en ... 0-a24e-c1c999be2b34

简单来说,使用最新的excel打开旧版本的excel文件。就会出现 所有自定义函数名都会添加@;单个单元格中的所有范围表达式都会添加@,这两种情况。

本问题就是第一种情况。

您可以尝试使用excel 2019,输入“=abc()”它会显示#Name!,公式是“=abc”

如果您使用最新的 Excel 打开该文件,会发现其变成了“=@abc()”。
回复 使用道具 举报
qnsh
初级会员   /  发表于:2023-7-18 15:51:16
6#
Joestar.Xu 发表于 2023-7-17 15:02
您好,经调研,这是设计使然,请查看这个链接中的内容:https://support.microsoft.com/en-gb/office/impli ...

那么在新版本中有办法排除这种情况么,或者说在从spreadjs导入导出时候进行处理?
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2023-7-18 15:55:42
7#
qnsh 发表于 2023-7-18 15:51
那么在新版本中有办法排除这种情况么,或者说在从spreadjs导入导出时候进行处理?

这边有一个思路,在导出前将其转换成文本,在导入前再转换为公式,您可以参考一下。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部