在 Excel 中有一個資料表(如下圖左),略過空白儲存格將資料重整,重新組合如下圖右,該如何處理?
【準備工作】
選取儲存格A2:A26,按下 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:資料。
【輸入公式】
儲存格C2:{=OFFSET($A$1,SMALL(IF(資料<>"",ROW(資料),999),ROW(1:1))-1,,,)}
這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵。
IF(資料<>"",ROW(資料),9999):判斷資料陣列中是否不為空白儲存格,成立則取得列號陣列,不成立則給予一個很大的值(本例為9999)。
SMALL(IF(資料<>"",ROW(資料),999),ROW(1:1)):根據上式取得的陣列,取出最小的一個列號(ROW(1:1)=1),當向下複製公式時,可以取得第 2 小、第 3 小的值、…。
接著,以 OFFSET 函數藉由列號陣列分別查詢「資料」陣列中的內容,如此便可列出不包含空白儲存格的內容。