網友依這篇:Excel-取出每列有數值最左(右)欄的內容及對應的欄位(INDEX,COLUMN)

提問到:如果資料欄位不是由A欄起始,該如何修改公式。

下圖中的資料是由C欄開始。

Excel-取出每列有資料最左欄的內容

【設計與解析】

儲存格I4:

{=IF((C4<>"")*1,C4,INDEX(C4:H4,MAX((C4:H4="")*COLUMN((C4:H4)))-COLUMN(C4)+2))}

這是陣列公式,輸入完成要按 Ctrl+Shift+Enter 鍵,Excel 會自竹加上「{}」。

複製儲存格J4,貼至儲存格J4:J15。

(1) (C4<>"")*1

用以判斷第1欄的內容是否為空白,如果不是則該欄內容為最左欄。

(2) MAX((C4:H4="")*COLUMN((C4:H4))

利用 MAX 函數找出儲存格C4:H4中是空白的欄位名稱。

(3) INDEX(C4:H4,MAX((C4:H4="")*COLUMN((C4:H4)))-COLUMN(C4)+2))

利用 INDEX 函數依第(2)式傳回數值查詢對應的儲存格內容,其中參數「-COLUMN(C4)+2」,是為了校正不是由A欄起始的問題。

 

如果將資料放在其他位欄位時,公式對應修改:

Excel-取出每列有資料最左欄的內容

儲存格I4:

{=IF((D4<>"")*1,D4,INDEX(D4:I4,MAX((D4:I4="")*COLUMN((D4:I4)))-COLUMN(D4)+2))}

學不完.教不停.用不盡文章列表

    文章標籤

    Excel 資料處理

    全站熱搜

    vincent 發表在 痞客邦 留言(0) 人氣()