函數應用
Q5 |
函數應用 |
||||
示範檔 |
無 |
範例檔 |
Q5.XLSX |
結果檔 |
Q5F.XLSX |
錦子老師您好:
我在「工作表1」工作表有一表格資料,如下圖所示。
A~AD一共有30個欄位,想要在AF(綠色)和AH(紅色)欄位寫一個公式然後用拖拉方塊向下拉,可以得到上面顯示的數值~請幫忙~
1.點取AF1儲存格,輸入公式:「=OFFSET($A$2,ROUNDUP(ROW()/10,0)-1,MOD(MOD (ROW(),30)*3-2,30),1,1)」後,再將滑鼠指標移到AF1右下角拖拉方塊上方,向下拖曳到AF10即可完成。
2.點取AH1儲存格,輸入公式:「=OFFSET($A$2,ROUNDUP(ROW()/10,0)-1,MOD(MOD (ROW(),30)*3-1,30),1,1)」後,再將滑鼠指標移到AF1右下角拖拉方塊上方,向下拖曳到AF10即可完成,如下圖所示。
說明:
OFFSET(起始位置,要位移的列數,要位移的欄數,列數,欄數)
$A$1:指定的起始位置。
ROUNDUP(ROW()/10,0)-1:將目前所在列的編號除於10(這是由於一列有10個欄資料要抓取),然後將所得小數無條件進位後再減1,得出目前是否換列的條件.
MOD(MOD (ROW(),30)*3-1,30):將列號先除以30後,再乘以3,表示每一筆都是差距3欄,由於AF是抓取B欄資料,故需再減2,而AH是抓取C欄資料,故需再減1,取得欄位移數。
OFFSET 根據所指定欄(正值向右,負值向左)列(正值向下,負值向上)位移數傳回指定的儲存格或範圍參照內容。
ROUNDUP 將指定的數值依指定位數無條件進位。
ROW 取得目前所在的儲存格列編號
ABS 傳回數值的絕對值
MOD 求二個數值相除後的餘數