又有網友來問:在 Excel 的資料表中,如何將資料以公式欄列互換的問題,其實就是要將資料 90 度轉置。(參考下圖)

方法有多種,以下提供二種供參考:

(1) 使用 INDIRECTADDRESS 函數

儲存格E1:=INDIRECT(ADDRESS(COLUMN(A1),ROW(A1)))

使用 ADDRESS 函數,原來的用法是 ADDRESS(列,欄),因為要轉置,所以改成 ADDRESS(欄,列),再藉由 INDIRECT 函數將 ADDRESS 函數所指的位址轉換成儲存格內容。

複製儲存格E1,貼至儲存格H3。

 

(2) 使用 OFFSET 函數

儲存格E1:=OFFSET($A$1,COLUMN(A:A)-1,ROW(1:1)-1,,)

原理同上,在 OFFSET 函數中也是將放在公式中的欄、列資料交換即可。

複製儲存格E1,貼至儲存格H3。

 


【補充資料】

相關之詳細函數說明,請參閱微軟網站:

OFFSEThttp://office.microsoft.com/zh-tw/excel-help/HP010342739.aspx

OFFSET 函數:傳回根據所指定的儲存格位址、列距及欄距而算出的參照位址。

語法:OFFSET(reference, rows, cols, [height], [width])

Reference:用以計算位移的起始參照位址。

Rows:左上角儲存格要往上或往下參照的列數。Rows可以是正數(表示在起始參照位址下方)或負數(表示在起始參照位址上方)

Cols:左上角儲存格要往左或往右參照的欄數。Cols 可以是正數(表示在起始參照位址右方)或負數(表示在起始參照位址左方)

Height:所傳回參照位址的高度 (以列數為單位)Height 必須是正數。

Width:所傳回參照位址的寬度 (以欄數為單位)Width 必須是正數。

arrow
arrow
    全站熱搜

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