发布网友 发布时间:2022-04-23 07:02
共2个回答
热心网友 时间:2023-10-06 05:32
数字长度不一致,无法直接用LEFT。
可用公式:
=-LOOKUP(1,-LEFT(A1,ROW($1:$15)))
=SUBSTITUTE(A1,B1,"")追问能解释一下 lookup 的那个么为什么有个小杠杠 -??? 不加的话 变成负数了号神奇啊
追答小杠杠是负号。
ROW($1:$15)返回{1,2,3,……,15}
,LEFT(A1,{1,2,3,……,15}),从A1左侧开始提取1至15位字符,如第一个结果为:{"1";"18";"181";"181台";"181台";"181台";"181台";"181台";"181台";"181台";"181台";"181台";"181台";"181台";"181台"}
前面加上负号,数字变为负数,文本变为错误值:{-1;-18;-181;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
LOOKUP在这一数组中搜索1,没有完全匹配的数据,返回最后一个有效值-181(排除错误值)。
前面再加负号,使负数变正:181
第二个公式,将A1中,包含B1部分替换为空。
热心网友 时间:2023-10-06 05:32
数字=IF(COUNT(FIND({0,1,2,3,4,5,6,7,8,9},A1)),--MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&"01234567")),SUMPRODUCT(--(ISERROR((MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)&1)*1)=FALSE))),"")
文本=substitute(a1,b1,"")