excel中,假设条件:A1为300,B1为圆φ,C1=IF(A1>350,"8","6"), D1为10, 问题如下: 5

公式:E1=IF(AND(B1="圆φ",C1),D1,0).。为什么E1=0,而不是10?公式:F1=IF(B1="圆φ",IF(C1<=10,D1,0),0)。为什么... 公式:E1=IF(AND(B1="圆φ",C1),D1,0).。为什么E1=0 ,而不是10?
公式:F1=IF(B1="圆φ",IF(C1<=10,D1,0),0)。为什么F1=0 ,而不是10?
请高手指点。
更正公式1:
公式:E1=IF(AND(B1="圆φ",C1<=10),D1,0)。为什么E1=0 ,而不是10?
展开
 我来答
百度网友ca64c0c
2013-02-28 · TA获得超过4666个赞
知道大有可为答主
回答量:2991
采纳率:61%
帮助的人:1475万
展开全部

E1:实际输入表格后,E1的结果是10,而不是0,可能是B1中的“圆φ”可能带有空格,即为“圆φ ”


F1:问题出在C1单元格,C1的值是文本“8”或“6”,而不是数值8或6,判断C1<=10时,文本“8”或“6”始终大于10,因此结果为0。当然还有另一个问题,如果B1中的“圆φ”带有空格,那么F1结果也为0。

C1公式应修正为:=IF(A1>350,8,6)

追问

首先谢谢各位的指点,公式修改后是成立的。但论据不充分:“因C1返回值是文本”,“ 判断C1<=10时,文本“8”或“6”始终大于10”。那么,C1×2=12呢?如下式:


追答

在算术运算时,EXCEL会自动将文本格式的数字转换为数值进行计算。

但在逻辑判断时,文本数字和数值数字是完全不同的含义,不会进行转换。

可对公式进行逐步求值检验,方法是,选中公式所在单元格,点击菜单:工具-公式审核-公式求值

再点击“求值”,逐步运算校验公式的计算过程。


可以看到,"6"<=10的计算结果为FALSE.

wykcorp
2013-02-28 · TA获得超过1.4万个赞
知道大有可为答主
回答量:5839
采纳率:85%
帮助的人:3364万
展开全部
C1=IF(A1>350,"8","6") 此公式中的返回值用双引号括起来,8和6这两个数字就变为文本了。
=IF(AND(B1="圆φ",C1),D1,0). 因为C1的值返回的是文本,所以此公式中的AND()是要求两个条件同时成立才会显示D1的值。即10。查现在AND()中的其中一个值是文本,条件不成立所以E1=0。 所以公式中的8和6不要用双引号就好了。 改为这样 C1=IF(A1>350,8,6)
当C1的公式修正后,F1的公式也会能正确的返回你想要的值10了。
有一个问题,你这公式有一个逻辑上的错误,=IF(AND(B1="圆φ",C1),D1,0). 公式中C1的值不是8就是6,对于IF函数判断来说,只要值为数字型及不等于0条件就成立,所以C1这个值永远都是成立的,所以E1的公式改为这样 =IF(B1="圆φ",D1,0) 效果跟你原公式是一样的。F1改为:=IF(B1="圆φ",D1,0)
以上的只是分析原理上的东西,最后要说的是,你的C1公式返回的值是不是有一个数字是写错了呀?8和6是不是有一个是18或16或更大的数值了?
追问

首先谢谢各位的指点,公式修改后是成立的。但论据不充分:因C1返回值是“文本”,

=IF(AND(B1="圆φ",C1),D1,0). 公式中两个条件都是"文本",如下式:

问题出在:1. C1作为判断条件,在公式中不完善,如写成C1=”6”就完善了,就像上式;

                 2. C1<=10,因C1返回值是“文本”,“文本”不能与具体“数字型数据”比较大小。

追答
有点弄得不太清楚你这追问的意思,好像你也知道问题所在,但有一点,为什么C1的值非要是以文本的形式返回了,直接用8和6不行吗,怎么一定要非要加双引号,这是为什么了?而且你公式中c1<=10,即使你C1返回的是数字形式的8和6,但你要求是C1<=10,那么无论是返回8或6都是一定<=10的,那是没有意义的。如果还是坚持反回的文本8和6,那么文本的8或6都是会大于10的。还是没有意义啊。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
朱仕平
2013-02-28 · 知道合伙人软件行家
朱仕平
知道合伙人软件行家
采纳数:7872 获赞数:29183
15年质量管理经验, 5年EXCEL培训经验, 目前专职EXCEL网络教育和企业培训

向TA提问 私信TA
展开全部
C1=IF(A1>350,8,6)
E1=IF(AND(B1="圆φ",C1),D1,0)
F1=IF(B1="圆φ",IF(C1<=10,D1,0),0)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
uhmf
2013-02-28 · TA获得超过1457个赞
知道大有可为答主
回答量:1891
采纳率:50%
帮助的人:1316万
展开全部
C1=IF(A1>350,"8","6"),这句不要使用引号
B1中的圆φ和E1、F1中圆φ不同
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pxiceplay
2013-02-28 · TA获得超过1.9万个赞
知道大有可为答主
回答量:4881
采纳率:50%
帮助的人:5156万
展开全部
1:and是逻辑公式,括号里必须全为逻辑值TRUE才返回TRUE,否则返回FALSE。但是你C1里面返回值都打了引号,不是数值,而都是返回的文本,根据排序的原则,文本总是大于数字的,AND里面的C1<=10不成立,因此E1返回0
2:同样的道理,第二个IF返回0,所以不管B1是什么,都会返回0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
ceacy_sina
2013-02-28 · TA获得超过2万个赞
知道大有可为答主
回答量:8551
采纳率:91%
帮助的人:1487万
展开全部
问题出在B1单元格中,你仔细看看是不是存在空格,主要是“圆φ”的前面和后面
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式