Excel中IF与FIND函数结合的返回值?

发布网友 发布时间:2022-04-21 05:40

我来回答

5个回答

热心网友 时间:2022-06-18 07:01

材料/工具:Excel2007

1、打开Excel2007如下图想通过函数返回教语文或者数学的老师的名次

2、首先用find函数确定a列数据是否包含语文或者数学。

3、如果包含find函数将返回语或者数再文本字符串中处于第几位。

4、如果科目中不包含语文或者数学,find函数将返回#value!错误值。

5、isnumber函数是一个逻辑判断函数,判断参数是不是数值,如果是返回真,如果不是返回假,两个逻辑值相加,可以将逻辑值转换成0和1参与运算,加号代表两个逻辑值之间的关系是满足一个即可,也就是或者的关系。

6、最后最外层的if函数是这样的如果满足条件将返回,名次,否则返回第三个参数。

热心网友 时间:2022-06-18 07:01

首先,find函数返回的是  数字,比如说 find(“*”,B2),这个函数返回的值应该是“10”,即“*”位置是这段文字的第十个。。。反思一下你的公式相当于:if(10,“*机”,“球机”),if是个判断函数,这个“10”没有任何判断的东西,所以,if函数默认,无论你的值是啥,都返回“*机”(即选择第一个选项“*机”,不鸟第二个选项“球机”)。

正常的公式应该是 if(iserror(find("*",B2,1))=false,“*机”,“球机”),iserror()函数是判断 它括号里的     值是不是有问题      的一个函数,如果find函数有问题(即没有发现“*”字),find函数就懵*了,没发现“*”字,于是find函数,就成为一个“有问题”的函数。

iserror函数  的 作用,对于任何 它括号里的  函数只会做两个判断,一个“false”,即我括号里这个哥们有问题;“true”,我括号里这哥们很正常。

所以,我刚才写的公式: if(iserror(find("*",B2,1))=false,“*机”,“球机”),翻译一下就是  if(若find函数这哥们不正常,返回“*球”,否则返回“球机”)。

热心网友 时间:2022-06-18 07:01

find函数如果找到了,给出的是找到字符的起始位置,是数值,不是T/F值,所以你的公式这样设不行,我猜你是想要在b2找是否含有“*”,如果是,则显示“*机”,否则显示“球机”。

可以添加一个iserror函数,将公式改成:=if(iserror(find("*",b2)),"球机","*机")。

热心网友 时间:2022-06-18 07:02

  FIND函数当查找到的时候返回位置,查不到的时候返回错误值,不能作为不成立条件来看待。
  =IF(ISNUMBER(FIND("*",B2)),"*机","球机")

热心网友 时间:2022-06-18 07:03

这是因为你用的FIND函数有关,如果能够找到“*”,那么就返回基所在的位置。如果找不到,那么直接返回错误信息。

公式需要修改如下:
=IF(ISERROR(FIND("*",B2)),"球型","*型")

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com