找回密码
 立即注册

QQ登录

只需一步,快速开始

中科江南
初级会员   /  发表于:2016-11-29 14:23  /   查看:4762  /  回复:8
本帖最后由 中科江南 于 2016-11-29 14:31 编辑

有自定义函数的单元格值都变为了#NAME?,使用在线表格编辑器导出再导入,自定义函数也会失效

8 个回复

倒序浏览
CCKan
银牌会员   /  发表于:2016-11-29 14:37:18
沙发
你需要定义一个 customFunction, 最好定义在全局,这样导入导出问题比较少,比如:
            GcSpread.Sheets.Calc.Functions.defineGlobalCustomFunction("MYFUNCTION", function (args) {
                return args[0];
            });
回复 使用道具 举报
中科江南
初级会员   /  发表于:2016-11-29 14:47:20
板凳
CCKan 发表于 2016-11-29 14:37
你需要定义一个 customFunction, 最好定义在全局,这样导入导出问题比较少,比如:
            GcSpread ...

defineGlobalCustomFunction 能定义异步函数吗? 没找到defineGlobalAsyncCustomFunction
回复 使用道具 举报
CCKan
银牌会员   /  发表于:2016-11-29 15:25:10
地板
你们用得真高级。V9没办法定义全局的异步函数,V10就可以了。
最简单的办法就是用一个内部 API,但是在V10 不能正常工作:

function MyAsyncFunction() { }
...
GcSpread.Sheets.Calc.Functions._customFunctions["MYASYNCFUNCTION"] = new MyAsyncFunction();
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-11-29 15:39:18
5#
异步函数是V10 新功能,升级后就可以用了。
回复 使用道具 举报
CCKan
银牌会员   /  发表于:2016-11-29 16:26:07
6#
V9 就有异步函数的,不过 V10 做了增强。
回复 使用道具 举报
中科江南
初级会员   /  发表于:2016-12-14 11:56:57
7#
用V10的 defineGlobalCustomFunction解决了
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2016-12-14 15:30:48
8#
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2020-4-3 11:18:58
9#
自定义函数未识别出现#NAME的原因参考文章:https://gcdn.grapecity.com.cn/fo ... &extra=page%3D1
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部