我试图在第8列中获取值,基于具有多个条件(Range1,Range2,Range3)的MAX值(列Range4),但是excel给出了错误“#N / A”。错误在哪里?
VLOOKUP(MAX(IF(Range1=2013;IF(Range2="april";IF(Range3="Alexa";Range4))));Range5;8;FALSE)
部分
{MAX(IF(Range1=2013;IF(Range2="april";IF(Range3="Alexa";Range4))))}
单独工作(它给我正确的值),但不在VLOOKUP函数内。
谢谢!
用于测试的示例数据集:
First_day Last_day Week_Num Week_Range Month Year Rank_name Rank_value
01/04/2013 07/04/2013 14 1-7 april april 2013 Alexa 10122
08/04/2013 14/04/2013 15 8-14 april april 2013 Alexa 9670
15/04/2013 21/04/2013 16 15-21 april april 2013 Alexa 9130
22/04/2013 28/04/2013 17 22-28 april april 2013 Alexa 8340
29/04/2013 05/05/2013 18 29-5 april april 2013 Alexa 7543
31/03/2014 06/04/2014 14 31-06 april april 2014 Alexa 11428
07/04/2014 13/04/2014 15 07-13 april april 2014 Alexa 7159
14/04/2014 20/04/2014 16 14-20 april april 2014 Alexa 7027
21/04/2014 27/04/2014 17 21-27 april april 2014 Alexa 6675
28/04/2014 04/05/2014 18 28-04 april april 2014 Alexa 5379
范围和列之间的等价:
答案 0 :(得分:0)
请尝试:
=INDEX(Range8;MATCH(MAX(IF(Range1=2013;IF(Range2="april";IF(Range3="Alexa";Range4))));Range4;0))
使用Control + Shift + Enter。
答案 1 :(得分:0)
现有配方的问题(来自pnuts,2014年6月10日)是这样的: 该公式首先按嵌套的if缩小列表,然后从符合条件的行中选择最大的Week_Num。但是找到最大值后,MATCH函数会忽略标准(它们仅用于从Range4中找到最大值)。如果您有其他行(即使它们与条件不匹配)具有相同的Week_Num,MATCH将在整个列表中找到Range4中具有相同Week_Num的第一行。一种解决方案是将相同的标准添加到“lookup_value”中使用的MATCH的“lookup_array”中。
= INDEX(Range8; MATCH(MAX(IF(范围1 = 2013; IF(范围2 = “四月”; IF(Range3 = “Alexa的”;范围4)))); IF(范围1 = 2013; IF(范围2 = “april”; IF(Range3 =“Alexa”; Range4))); 0))
再次使用Control-Shift-Enter。
我想我正确地输入了上面的公式,但我没有建立一张表来测试它,所以......
另外,请注意,在列表中没有符合条件的情况下,此公式仍然存在问题。在这种情况下,您会收到错误。解决方法是在整个事物的前面添加一个IFERROR。
= IFERROR(INDEX(Range8; MATCH(MAX(IF(范围1 = 2013; IF(范围2 = “四月”; IF(Range3 = “Alexa的”;范围4)))); IF(范围1 = 2013; IF( Range2 =“april”; IF(Range3 =“Alexa”; Range4))); 0)),“”)