2011年11月16日 星期三

Excel-區分奇偶數(陣列應用)

在 Excel 中取得一個資料表(如下圖左),如果要將項目區分成偶數和奇數分列(如下圖中和下圖右),該如何處理?本題可以使用陣列公式來完成。

【準備工作】

選取儲存格A1:B26,按一下 Ctrl+Shift+F3 鍵,勾選「頂端列」,建立名稱:序號、項目。

 

【方法一:依數字大小順序排列】

儲存格D2:{=IFERROR(SMALL(IF(MOD(項目,2)=0,項目),ROW(1:1)),"")}

儲存格E2:{=IFERROR(SMALL(IF(MOD(項目,2)=1,項目),ROW(1:1)),"")}

這是陣列公式,輸入完成請按 Ctrl+Shift+Enter 鍵。複製儲存格D2:E2,往下各列貼上。

IF(MOD(項目,2)=0,項目):取出項目欄位中除以2的餘數為0者(偶數)的項目陣列。

利用 SMALL 函數由小到大取出符合的數字。

利用 IFERROR 函數將查不到資料的錯誤訊息以空白顯示。

此結果即可以將數列以由小到大的順序來呈現。

 

【方法二:依原來數列順序排列】

儲存格G2:{=IFERROR(INDEX(項目,SMALL(IF(MOD(項目,2)=0,序號),ROW(1:1))),"")}

儲存格H2:{=IFERROR(INDEX(項目,SMALL(IF(MOD(項目,2)=1,序號),ROW(1:1))),"")}

這是陣列公式,輸入完成請按 Ctrl+Shift+Enter 鍵。複製儲存格G2:H2,往下各列貼上。

原理同方法一。

IF(MOD(項目,2)=0,序號):取出項目欄位中除以2的餘數為0者(偶數)的序號陣列。

再利用 INDEX 函數,並使用序號陣列,來索引項目陣列中的值。

此結果即可以原先的數列順序來呈現。

沒有留言:

張貼留言

檢視其他文章

好康東東