如圖所示的地區銷售明細表中,為了其他應用的需要,必須將地區列的合并單元格中的空單元格填充對應的地區名稱,下面的公式將實現這種需求。
E列單元格利用T函數結合OFFSET函數生成公式如下:
{=T(OFFSET($A$1,MATCH(ROW($A$2:$A$13),IF($A$2:$A$13<>"",ROW($A$2:$A$13))),))}
F列單元格利用LOOKUP函數填充公式如下:
{=LOOKUP(ROW($A$2:$A$13),IF($A$2:$A$13<>"",ROW($A$2:$A$13)),$A$2:$A$13)}
兩個公式中利用IF函數部分的條件判斷是解決問題的關鍵,目的在于將A列非空區域賦值行號,空單元格則賦值為FALSE。結果為:
{2;FALSE;FALSE;5;FALSE;FALSE;FALSE;9;FALSE;FALSE;FALSE;FALSE}
兩個公式都使用區間模糊查找返回序號,再根據序號返回對應的地區名稱。而區別在于LOOKUP函數支持數組內部運算,直接生成內存數組。