2016-09-07 69 views
0

我有數據3號,如:行避免INDIRECT()

enter image description here

,我想找到這個詞通行證的前兩個事件。

首次發生很容易;在C6我輸入:

=MATCH("Pass",3:3,0) 

並正確產生3 (柱Ç。爲了得到第二次出現的位置,我想使用MATCH()從第一次出現的右邊開始一列,即D3:IV3,但是基於我已經在中得到的結果C6 我知道我可以得到d有:

=SUBSTITUTE((LEFT(ADDRESS(1,C6+1),3)),"$","") 

所以我使用:

=MATCH("Pass",INDIRECT(SUBSTITUTE((LEFT(ADDRESS(1,C6+1),3)),"$","") & "3:IV3"),0)+C6 

這工作:

enter image description here

但我不敢相信這個非常醜陋的公式是找到第二個事件的最好方法。有什麼建議麼 ??

+1

參見[如何從行返回第二個非空白單元格](http://stackoverflow.com/questions/39374379/how-to-return-the-second-non-blank-cell-from-row-excel-for-mac/ 39374473 #39374473)從今天早些時候開始。 – Jeeped

回答

4

使用聚合爲一個小(IF())與Pass獲得第二欄:

=AGGREGATE(15,6,COLUMN(A:Z)/(A3:Z3="Pass"),2) 

哪裏2是發生。

enter image description here


我知道你很討厭數組公式所以既然你已經知道第一個你可以找到第二個用這個公式:

=MATCH("Pass",INDEX(3:3,D5+1):INDEX(3:3,15000),0)+D5 

![enter image description here

+0

...................完美! –

+1

@ Gary'sStudent我編輯了這篇文章(再次)用第一個實例使用你的幫助單元,從而避免了數組公式。 –

+0

...................更完美! –