欢迎转发和点一下“在看”,文末留言互动!
置顶公众号或设为星标及时接收更新不迷路
小伙伴们好,今天要和大家分享一道非常特别的文本题目。题目的要求是这样子的:
想一想,是不是无从下手?要解决这道题目,就需要借助今天要介绍给大家的这两个函数:
DECIMAL函数和BASE函数。
DECIMAL函数的语法结构:
DECIMAL(text, radix),按给定基数将数字的文本表示形式转换成十进制数。
Text 的字符串长度必须小于或等于 255 个字符。
Text 参数可以是对于基数有效的字母数字字符的任意组合,并且不区分大小写。
Excel 支持 Text 参数大于或等于 0 且小于 2^53。可解析为一个大于 2^53 的数字的 text 参数可能导致丢失精度。
基数必须大于或等于 2(二进制或基数 2)并且小于或等于 36(基数 36)。
大于 10 的基数根据需要使用数值 0-9 和字母 A-Z。例如,基数 16(十六进制)使用 0-9 和 A-F,而基数 36 使用 0-9 和 A-Z。
如果任何一个参数超出其限制,DECIMAL 可能返回 #NUM! 或 #VALUE! 错误值。
BASE函数的语法结构:
BASE(Number, Radix [Min_length]),将数字转换为具备给定基数的文本表示。
如果 Number、Radix 或 Min_length 超出最小值或最大值的限制范围,则 BASE 返回错误值 #NUM! 。
如果 Number 是非数值,则 BASE 返回错误值 #VALUE! 。
作为参数输入的任何非整数数字将被截尾取整。
当包含 Min_length 参数时,如果结果短于指定的最小长度,将在结果中添加前导零。例如,BASE(16,2) 返回 10000,但 BASE(16,2,8) 返回 00010000。
Min_length 参数的最大值为 255。
这一组函数我们平时几乎是用不到的。所以大家也不必去钻研这一组函数。它们的某些特性正好符合今天我们的这道题目,所以拿来一用。
01
一起来看看如何书写公式吧!
CHAR(ROW($65:$90))
这部分部分是内码,代表26个大写英文字母。
FIND(CHAR(ROW($65:$90)),A2)
在源数据中寻找26个大写的英文字母。
IFERROR(FIND(CHAR(ROW($65:$90)),A2),)
如果没有找到,就将错误值转换为0。
LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9))
按从大到小的顺序返回各字母对应的位置信息。由于本题中最大的英文字母个数是9,所以这里使用ROW($1:$9),如果个数更多,则更改相应的数字即可。
MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1)
依次将代表字母的数字提取出来。
DECIMAL(MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1),36)
将对应字母转换为36进制下的数字。由于英文字母有26个,所以这里我们选择转换为36进制。
DECIMAL(MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1),36)*36^ROW($1:$9)
进行加权处理。这里由于是在36进制下,所以我们以36为底数进行加权。
IFERROR(DECIMAL(MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1),36)*36^ROW($1:$9),)
利用IFERROR函数将错误值转换为0。
BASE(SUM(IFERROR(DECIMAL(MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1),36)*36^ROW($1:$9),)),36)
SUM函数求和后,BASE函数做一个逆运算,将数值转换回字符。
=SUBSTITUTE(BASE(SUM(IFERROR(DECIMAL(MID(A2,LARGE(IFERROR(FIND(CHAR(ROW($65:$90)),A2),),ROW($1:$9)),1),36)*36^ROW($1:$9),)),36),0,)
最后,利用SUBSTITUTE函数替换掉0,得到正确结果
由于本篇内容太偏门了,所以大家只要收藏本篇,当遇到类似的问题后,在拿出来照猫画虎套用就好了。我匿了匿了…
好了朋友们,今天和大家分享的内容就是这些了!喜欢我的文章请分享、转发、点赞和收藏吧!如有任何问题可以随时私信我哦!
———END———
限 时 特 惠: 本站每日持续更新海量各大最新【内部创业教程】,一年会员只需 98 元,全站资源免费下载 点击查看详情
站 长 微 信: webprojs_com