search和替代多个值
D列是C列的LOOKUP结果
ABCD 1 1234 1234567 Person1 ASKXXXXXXXX 2 3692 8465837 Person2 AFTXXXX
如果有8个,我需要用DreplaceD中的X,如果有4个,用D代替D中的X。
我尝试下面的公式,但只适用于8X,而不是4X的。
=IF(SEARCH("XXXXXXXX",D2),SUBSTITUTE(D2,"XXXXXXXX",$B$2),IF(SEARCH("XXXX",D2),SUBSTITUTE(D2,"XXXX",$A$2),""))
感谢您的任何帮助。
如果SEARCH
失败,您将获得#VALUE!
作为结果。 IF
公式不知道如何处理这个,所以失败了。
你需要编写你的公式来处理错误。 做这个:
=IF(NOT(ISERROR(SEARCH("XXXXXXXX",D2))),SUBSTITUTE(D2,"XXXXXXXX",$B$2),IF(NOT(ISERROR(SEARCH("XXXX",D2))),SUBSTITUTE(D2,"XXXX",$A$2),D2))
这适用于您提供的数据
=LEFT(TRIM(D2),3)&IF(LEN(RIGHT(TRIM(D2),LEN(TRIM(D2))-3))=4,A2,B2)