excel if函数返回 #value!

函数如下:
=IF(FIND("3030",C3),1,3)
C3输入3030,返回1正常;输入其他值,返回#value!,不能返回3。急求解!

find公式中,第一个是要查的内容,第二个是被查的内容,比如你C3是223030,就会返回3,但如果找不到,find公式并不是返回0,而是返回#value,也就是说,如果你可以用如下公式:
=IFERROR(IF(FIND("3030",c3)>0,1),3)
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-12
=IF(ISNUMBER(FIND("3030",C3)),1,3)本回答被提问者采纳
第2个回答  2012-01-12
建议你查EXCEL帮助。

-----------------------------
FIND 用于查找其他文本字符串 (within_text) 内的文本字符串 (find_text),并从 within_text 的首字符开始返回 find_text 的起始位置编号。也可使用 SEARCH 查找其他文本字符串中的某个文本字符串,但是,FIND 和 SEARCH 不同,FIND 区分大小写并且不允许使用通配符。

FINDB 用于查找其他文本字符串 (within_text) 内的文本字符串 (find_text),并基于每个字符所使用的字节数从 within_text 的首字符开始返回 find_text 的起始位置编号。此函数用于双字节字符。也可使用 SEARCHB 查找其他文本字符串中的某个文本字符串。

语法

FIND(find_text,within_text,start_num)

FINDB(find_text,within_text,start_num)

Find_text 是要查找的文本。

Within_text 是包含要查找文本的文本。

Start_num 指定开始进行查找的字符。within_text 中的首字符是编号为 1 的字符。如果忽略 start_num,则假设其为 1。

提示

使用 start_num 可跳过指定数目的字符。例如,假定使用文本字符串“AYF0093.YoungMensApparel”,如果要查找文本字符串中说明部分的第一个“Y”的编号,则可将 start_num 设置为 8,这样就不会查找文本的序列号部分。FIND 将从第 8 个字符开始查找,而在下一个字符处即可找到 find_text,于是返回编号 9。FIND 总是从 within_text 的起始处返回字符编号,如果 start_num 大于 1,也会对跳过的字符进行计数。

说明

如果 find_text 是空文本 (""),则 FIND 会匹配搜索串中的首字符(即:编号为 start_num 或 1 的字符)。
Find_text 中不能包含通配符。
如果 within_text 中没有 find_text,则 FIND 和 FINDB 返回错误值 #VALUE!。
如果 start_num 不大于 0,则 FIND 和 FINDB 返回错误值 #VALUE!。
如果 start_num 大于 within_text 的长度,则 FIND 和 FINDB 返回错误值 #VALUE!。

参考资料:http://zhidao.baidu.com/question/154258938.html

第3个回答  2012-01-12
=IF(ISERROR(FIND("3030",C3)),3,1),用这个
第4个回答  2012-01-12
不用那么复杂。就下面公式就行
=IF(C3=3030,1,3)
相似回答