excel if RIGHT 函数

excel if RIGHT 函数
=IF(O5="","",
IF(OR(--RIGHT(O5,3)={101,103,104}),"A",
IF(OR(--RIGHT(O5,3)={102,105,106,120,122}),"B",
IF(OR(--RIGHT(O5,3)={107,121,108,111,113,114,115,116}),"C",
IF(OR(--RIGHT(O5,3)={109,110,112}),"D",
IF(OR(--RIGHT(O5,3)={117,118,119}),"E",
IF(OR(--RIGHT(O5,3)={201,206,211,212}),"F",
IF(OR(--RIGHT(O5,3)={205,210}),"G",
IF(OR(--RIGHT(O5,3)={202,208}),"H",
IF(OR(--RIGHT(O5,3)={203,209}),"I",
IF(OR(--RIGHT(O5,3)={204,207}),"J",
IF(OR(--RIGHT(O5,3)={301,302,303,304,305,310,312,316,313,
314,315}),"K",
IF(OR(--RIGHT(O5,3)={306,307,308,309}),"L",
"")))))))))))))
为什么 数据以1开头 就能正常输出 加入 2 3 开头,就报错 ,把输出项 从F以后删除 就能运行,加入F以后 就显示从F列错误
qq310172978 1年前 已收到1个回答 举报

siyue777 花朵

共回答了20个问题采纳率:100% 举报

EXCEL2007及以下IF嵌套不能超过7层
且后部分数组中未用英文逗号间隔数据
可试用以下公式
=if(O5="","",char(sum(
OR(--RIGHT(O5,3)={101,103,104})*65,
OR(--RIGHT(O5,3)={102,105,106,120,122})*66,
OR(--RIGHT(O5,3)={107,121,108,111,113,114,115,116})*67,
OR(--RIGHT(O5,3)={109,110,112})*68,
OR(--RIGHT(O5,3)={117,118,119})*69,
OR(--RIGHT(O5,3)={201,206,211,212})*70,
OR(--RIGHT(O5,3)={205,210})*71,
OR(--RIGHT(O5,3)={202,208})*72,
OR(--RIGHT(O5,3)={203,209})*73,
OR(--RIGHT(O5,3)={204,207})*74,
OR(--RIGHT(O5,3)={301,302,303,304,305,310,312,316,313,
314,315})*75,
OR(--RIGHT(O5,3)={306,307,308,309})*76
)))

1年前 追问

5

qq310172978 举报

哦,那如果我想用汉字来标识呢 不用ABCD英文标识 怎么处理啊 谢谢

举报 siyue777

那么,你就得再加函数处理了,该公式也得改改:把*65*66*67……那些分别写成*1*2*3,然后不要char函数体,改用choose函数, 示例如下 =IF(O5="","",CHOOSE( SUM( OR(--RIGHT(O5,3)={101,103,104})*1, OR(--RIGHT(O5,3)={102,105,106,120,122})*2, OR(--RIGHT(O5,3)={107,121,108,111,113,114,115,116})*3, OR(--RIGHT(O5,3)={109,110,112})*4, OR(--RIGHT(O5,3)={117,118,119})*5, OR(--RIGHT(O5,3)={201,206,211,212})*6, OR(--RIGHT(O5,3)={205,210})*7, OR(--RIGHT(O5,3)={202,208})*8, OR(--RIGHT(O5,3)={203,209})*9, OR(--RIGHT(O5,3)={204,207})*10, OR(--RIGHT(O5,3)={301,302,303,304,305,310,312,316,313,314,315})*11, OR(--RIGHT(O5,3)={306,307,308,309})*12 ),"字1","字2","字3","字4","字5","字6","字7","字8","字9","字10","字11","字12" ))

qq310172978 举报

好用了 太感谢了 省了好多时间 谢谢

举报 siyue777

不用,谢谢你的感谢,太谢谢了。记得给分
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 5.374 s. - webmaster@yulucn.com