Excel數值交換-OFFSET函數
2004 |
Excel數值交換-OFFSET函數 |
||||
示範檔 |
無 |
範例檔 |
2004.XLSX |
結果檔 |
2004F.XLSX |
瑞莉:「錦子老師,今天有一筆資料,排序為隨機的排序,假設今天排列如下:
如果今天要A2跟A13對調,A3跟A12對調,A4跟A11對調,請問有語法可以用嗎?」
錦子老師:「瑞莉,這要使用OFFSET函數結合即可達到妳的目標 。」
點取B2儲存格輸入公式「=IF(ROW()<=(COUNT(A:A)/2)+1,OFFSET($A$2,COUNT(A:A)+1-ROW(),0),OFFSET($A$2,(COUNT(A:A)/2)-(ROW()-(COUNT(A:A)/2))+1,0))」後,按ENTER鍵完成輸入,並複製到B3:B13儲存格。
【公式說明】
1 ROW()<=(COUNT(A:A)/2)+1 列號小於等於A欄所有數值儲存格數量除以2+1(由於第一列為文字,故須加1)
2 OFFSET($A$2,COUNT(A:A)+1-ROW(),0) 以A2儲存格為基準,向下移動A欄數值儲存格數加1減列號值的列數,欄不移動。
3 OFFSET($A$2,(COUNT(A:A)/2)-(ROW()-(COUNT(A:A)/2))+1,0)) 以A2儲存格為基準,向下移動A欄數值儲存格數除以2減(列號值減A欄數值儲存格數除以2的值加1)的列數,欄不移動。
4 If(Row()<=(Count(A:A)/2)+1,Offset($A$2,Count(A:A)+1-Row(),0),Offset($A$2,(count( A:A)/2)- (Row()-(Count(A:A)/2))+1,0)) 假設1成立執行2,否則執行3。