奇怪的错误,求教

试图做一个简单的字母转为数字的示例 思路是用mid将输入的单词拆分为单个字母 然后upper转为大写 接着xlookup每一项,返回对应的数字 再将返回值加和 报错,排查不出什么问题,求教。 【金山文档 | WPS云文档】 字母对应数字案例 https://www.kdocs.cn/l/cgV1Hfej5Lr3
广东省
浏览 513
收藏
3
分享
3 +1
7
+1
全部评论 7
 
akent
试试用这个公式:=XLOOKUP(REGEXP(UPPER(D1),"\D"),$A$2:$A$27,$B$2:$B$27,"")
· 广东省
回复
 
恰同学少年
如果想去掉辅助列: =SUM(BYCOL(UPPER(REGEXP(F3,"\w")),CODE))-LEN(F3)*64
· 黑龙江省
1
回复
恰同学少年
这个有点长 =LET(fx,LAMBDA(x,y,IF(LEN(x)>0,fx(RIGHT(x,LEN(x)-1),y+CODE(UPPER(x))-64),y)),fx(D1,0))
· 黑龙江省
回复
 
十一年
其实公式已经运算出结果了,只是在单元格中WPS显示不出来,微软表格就可以正常显示 如果将XLOOKUP第3参数的单元格引用,使用TOCOL函数转换成数组,WPS表格才会显示结果 如果BYCOL第1参数不是数组而是单元格引用,也能够正常显示结果 所以说WPS的BYCOL或XLOOKUP函数设计的有问题
· 黑龙江省
回复
伟
你说的这个要如何转换,我把公式里面的xlookup换成index+match组织又可以,想不通
· 广东省
回复
 
亂雲飛渡
回答:在外面套个SUM函数 =SUM(BYCOL(UPPER(MID($D$1,SEQUENCE(1,LEN($D$1)),1)),LAMBDA(x,XLOOKUP(x,$A$2:$A$27,$B$2:$B$27))))
· 广东省
回复
亂雲飛渡
=SUM(XLOOKUP(UPPER(REGEXP(D1,"\w")),A2:A27,B2:B27))
· 广东省
回复