嵌套的IF公式,如果值未显示则返回空白单元格

时间:2015-10-13 02:23:49

标签: excel excel-formula nested-if

我需要一些帮助来处理我用来从另一个包含公式的工作表中提取数据的公式。一旦源单元格赋值,我的嵌套if公式正常工作,但是当源单元格为空时它仍然返回一个值(仍然是等待获取数据的公式)。

使用下面的公式返回的值不正确而不是空白单元格:

=IF('Training Wrap Up'!G5=100%,5,IF('Training Wrap Up'!G5>89%,4,IF
    ('Training Wrap Up'!G5>79%,3,IF('Training Wrap Up'!G5>69%,2,IF
    ('Training Wrap Up'!G5<69%,1,"")))))

使用以下公式返回一个空白单元格,直到源单元格有数据然后返回真值,但我的范围比下面的“=”公式更宽:

=IF('Training Wrap Up'!G5=100%,5,IF('Training Wrap Up'!G5=90%,4,IF
    ('Training Wrap Up'!G5=80%,3,IF('Training Wrap Up'!G5=70%,2,IF
    ('Training Wrap Up'!B6<69%,1,"")))))

我希望有一个空格,直到G5显示一个值。

1 个答案:

答案 0 :(得分:0)

你可以将它包裹在一个条件中,在继续之前测试G5是否为空,比如说:

=IF(ISBLANK('Training Wrap Up'!G5),"",IF('Training Wrap Up'!G5=100%,5,IF('Training Wrap Up'!G5>89%,4,IF('Training Wrap Up'!G5>79%,3,IF('Training Wrap Up'!G5>69%,2,IF('Training Wrap Up'!G5<69%,1,""))))))  

作为你的公式,当G5 = 69%时,这也不会返回任何内容。我猜这可能不是意图,并提供一个更短的版本,返回1 69%:

=IF('Training Wrap Up'!G5="","",LOOKUP('Training Wrap Up'!G5,{0,0.6901,0.7901,0.8901,1},{1,2,3,4,5}))  

请注意,LOOKUP正在努力解决各种可能性,并避免说89%返回4我已将该突破点设为89.01% - 以3作为您的公式。如果你想使用较短的版本,你可能需要调整甚至小于0.01%的数量 - 或者可能会减少小数位数。