我要投稿 | RSS
您当前的位置:首页 > 人工服务

代查纠错

作者:      来源:原创
情况是这样的,公式在部分单元格有效,而下拉,部分单元格的公式又无法计算出结果。



我们来看一下P8单元格使用了sumif的公式,if公式只是起到了美化的效果,可以忽略,但上面的P2到P5是可以正常运算结果的,说明公式本身并没有问题。如下图:



我们来分析一下,左侧的原始数据部分,第7行是有C这个值的,提取显示的是150,而sumif却没有求和出来,判断从原始数据异常入手。下面来查看单元格的内容,如下:



原公式如下:
=IFERROR(IF(EXACT(B2,项目代码!$E$2),F2*0.3,IF(EXACT(B2,项目代码!$E$3),F2*0.4,IF(EXACT(B2,项目代码!$E$4),F2*0.4,IF(AND(OR(C2="A",C2="B"),OR(E2="F1",E2="F4",E2="S1")),"50",IF(AND(C2="A",OR(E2="F2",E2="F5",E2="F7")),"100",IF(AND(C2="A",OR(E2="F3",E2="F6",E2="C2")),"150",IF(AND(C2="B",OR(E2="F2",E2="F5",E2="F7")),"80",IF(AND(C2="B",OR(E2="F3",E2="F6",E2="C2")),"100","")))))))),"")

可以发现,要进行计算的数值使用了引号,在excel表格中使用引号所表示的内容是不进行计算的内容,而再使用sumif进行求和时,就出现了不计算的情况。

所以,我们需要把公式中的文本变成数值,去掉对应的引号,如下:

=IFERROR(IF(EXACT(B2,项目代码!$E$2),F2*0.3,IF(EXACT(B2,项目代码!$E$3),F2*0.4,IF(EXACT(B2,项目代码!$E$4),F2*0.4,IF(AND(OR(C2="A",C2="B"),OR(E2="F1",E2="F4",E2="S1")),50,IF(AND(C2="A",OR(E2="F2",E2="F5",E2="F7")),100,IF(AND(C2="A",OR(E2="F3",E2="F6",E2="C2")),150,IF(AND(C2="B",OR(E2="F2",E2="F5",E2="F7")),80,IF(AND(C2="B",OR(E2="F3",E2="F6",E2="C2")),100,"")))))))),"")

使用修正后的公式,P列的公式不需要修改,保存后结果自动计算出来了。
来顶一下
返回首页
返回首页
推荐资讯
{SUM函数}:计算单元格区域中所有数值的和
{SUM函数}:计算单元
LEFT函数:从一个文本字符串的第一个字符开始返回指定个数的字符
LEFT函数:从一个文本
MID函数:从文本字符串中指定的起始位置起返回指定长度的字符
MID函数:从文本字符
column函数:返回一引用的列号
column函数:返回一引
扫一扫微信二维码,联系作者:
相关文章
    无相关信息
栏目更新
栏目热门