Q5函數應用

函數應用

Q5

函數應用

示範檔

範例檔

Q5.XLSX

結果檔

Q5F.XLSX

錦子老師您好:

我在「工作表1」工作表有一表格資料,如下圖所示。

AAD一共有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 求二個數值相除後的餘數