Excel简单查找问题

来源:百度知道 编辑:UC知道 时间:2024/05/28 02:08:06
要求在H2收款方式栏根据A2的内容分别显示代收或月结

那么H2的公式怎么写...

我自己研究了一个公式是:H2=MID(B98,SEARCH("代收",B98,4),2)
实验结果是有效,现在问题就是有的客户也就是A2单元格后面是没有括号的,也就是查找不一定必然成功。我要求如果查找不成功失败就还是保持留空可以麻

我知道这一步是用IF嵌套,但是我不知道要看是否找的到找不到用Search还是Match函数高手请赐教我不太懂啊。
H2=IF(判断是否找的到的公式,MID(B98,SEARCH("代收",B98,4),2),"")

请帮我写一下上面那个“判断是否找的到的公式”怎么写不胜感激...在次诚意提高分数5分...

PS:为防止误会我写一遍原始数据表格如下,请写出H2的公式,注意没有收款方式的要返回留空以后我手动补充所以要用我的判断语句再次感谢
A1 H2
江青辉(月结) 月结
海红亮
徐福水(代收) 代收
徐福火
本问题已经在http://zhidao.baidu.com/question/78755538.html?quesup1解决了
但是我想知道另位朋友的答案的解释,所以特设此提问。
有兴趣的可以参考以上连接。

=MID(A2,FIND("(",A2)+1,LEN(A2)-FIND("(",A2)-1) 我想得到这个公式的解释

当然其他有更好建议的朋友也可以提出来共同研究交流互相学习,我们来这里就是为了求知的

1.判断是否存在错误值用iserror函数。
if(iserror(MID(B98,SEARCH("代收",B98,4),2)),"",MID(B98,SEARCH("代收",B98,4),2))

2.以下简要解释一下公式:

MID(A2,FIND("(",A2)+1,LEN(A2)-FIND("(",A2)-1) 我想得到这个公式的解释

分解函数如下:

FIND("(",A2),表示在A2里查找左括号,并返回A2中左括号的位置,但是我们不希望返回“(代收)”这类型的字符串,因此,再加上1,则表示从“代”开始截取字符串。

LEN(A2)-FIND("(",A2)-1表示的是,前面说过了,find函数差找出字符在字符串中的位置,因此这次用len函数获取将字符串长度后,再减去前面字符串位置(实际也就是左括号前面的字符串长度),因此得到“代收)”字符串。

所以从整体来说,这个函数并不完善。更好的做法应该是:

mId(A2,search("(",A2,1)+1,search(")",A2,1)+1)

这样才会返回“代收”这些汉字(不含括弧)

=IF(LEN(A1)>3,RIGHT(A1,4),"")
如果不要括号的话就
=IF(LEN(A1)>3,MID(RIGHT(A1,4),2,2),"")

你说的
=MID(A2,FIND("(",A2)+1,LEN(A2)-FIND("(",A2)-1)
这个公式中FIND("(",A2)的意思是找到左括号的位置,+1是要从这个括号往后一位开始截取,LEN(A2)-FIND("(",A2)是指整个字符串的长度减去左括号之前包括左括号的长度,再-1是要把