excelperfect
我們知道,數(shù)組公式在輸入完后必須按Ctrl+Shift+Enter鍵來強(qiáng)制公式為數(shù)組公式。然而,我們已經(jīng)習(xí)慣了在輸入完后直接按Enter鍵,有沒有一些技巧能夠避免按Ctrl+Shift+Enter鍵但又能夠達(dá)到數(shù)組公式的效果呢?
在上一篇文章中,我們講解了通過適當(dāng)設(shè)置參數(shù)可以讓INDEX函數(shù)返回整行或整列,這表明INDEX函數(shù)可以強(qiáng)制返回數(shù)組來傳遞給另一個函數(shù)。否則,該函數(shù)就需要作為數(shù)組公式,也就是說在公式輸入完后要按Ctrl+Shift+Enter鍵。
下面舉一個例子來說明。
例如,要求列A中的單元格區(qū)域A1:A10中第一個非空單元格的相對位置。如果使用公式:
=MATCH(TRUE,A1:A10<>'',0)
將返回#N/A,如下圖1所示。(說明:在Office 365中,已增加這種自動轉(zhuǎn)換功能。如果你使用的是Office 365,結(jié)果可能與這里的不同)
圖1
必須采用數(shù)組公式輸入才能得到正確結(jié)果,即輸入完后要按Ctrl+Shift+Enter鍵,如下圖2所示。
圖2
無需數(shù)組公式,使用INDEX函數(shù)可以得到相同的結(jié)果:
=MATCH(TRUE,INDEX(A1:A10<>'',,),0)
如下圖3所示。
圖3
在公式中,忽略了行參數(shù)和列參數(shù),這將強(qiáng)制INDEX函數(shù)返回整個“列”區(qū)域。這里的列不是工作表單元格區(qū)域A1:A10,而是由10個布爾值組成的列數(shù)組:
=MATCH(TRUE,INDEX({FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE},,),0)
轉(zhuǎn)換為:
=MATCH(TRUE,{ FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE},0)
返回結(jié)果3。
注意,如果想避免Ctrl+Shift+Enter而使用INDEX函數(shù),會使公式變得更長,也會占用更多的Excel資源。然而,我們可以將這個技術(shù)作為數(shù)組公式的替代方法。
聯(lián)系客服