|
请教一下各位高手:这个函数INDEX(Sheet1!D:D,SMALL(IF((Sheet1!$G$2:$G$65536=1)*(Sheet1!$H$2:$H$65536=1),ROW($H$2:$H$65536),8^8),ROW(D2)))
这个函数中各部分的意思是啥
首先說這個公式是一個數組公式,在我看來它是為了彌補VLOOKUP的不足,因為VLOOKUP只能返回符合條件的第一個值,這個公式能返回所有附和條件的值。
请教一下各位高手:这个函数INDEX(Sheet1!D:D,SMALL(IF((Sheet1!$G$2:$G$65536=1)*(Sheet1!$H$2:$H$65536=1),ROW($H$2:$H$65536),8^8),ROW(D2)))
这个函数中各部分的意思是啥
先說主體。INDEX(D:D,。。。)這是函數的主體。意思是說返回D列的值,但究竟是哪些值呢,就是後面這一部分計算的結果。如果G列的值等於1,同時H2列的值也等於1,只要滿足這兩個條件,那麼就返回這個行號,如果不能同時滿足這兩個條件。那麼就返回行號8的8次方,也就是最後一行的行號。一般來說都是空值了。然後呢,把這些條件符合條件的行號放在一起,用SAMLL來依次從小到大來顯示。最終的結果就是我前面說的,把如果H2和G2都等於1的話,那麼就依次顯示對應D列的值。我說得挺詳細的了。給最佳答案哈。有哪兒不明白。我再繼續說。
|
|