如果你在 Excel 中取得一個資料表(如下圖左),想要將資料垂直和水平轉置(如下圖右),除了使用 Excel 中的複製功能,在貼上時選取[轉置]選項來完成之外,可否以公式來完成呢?
其實只要一個公式就可以完成:
儲存格F1:=OFFSET($A$1,COLUMN()-6,ROW()-1)
將儲存格F1向右和向下複製即可。
其中公式:=OFFSET($A$1,COLUMN()-n,ROW()-m),m為轉置後的第一個位置(例如:儲存格F1)為第幾欄,n為轉置後的第一個位置(例如:儲存格F1)為第幾列。
OFFSET的語法:OFFSET(reference, rows, cols, [height], [width])
其會傳回根據所指定的儲存格位址、列距及欄距而算出的參照位址。傳回的參照位址可以是單一個儲存格或一個儲存格範圍。您可以指定要傳回來的列數和欄數。
關於OFFSET函數的完整說明,請參閱微軟網站:
http://office.microsoft.com/zh-tw/excel-help/HP010342739.aspx
文章標籤
全站熱搜

想請問一下版大 如果excel,如這個公式要套在工作表A1,要如何修改?試過了一直都沒辦法。 資料在工作表A2 =OFFSET(工作表A2!$A$1,(COLUMN()-6)*0,(ROW()-1)*0)
請參考:http://isvincent.pixnet.net/blog/post/45920417
*****
*****
請問版大 類似這種工作表 A B C D ... H 1 甲 乙 丙 丁 ... 申 2 1M 2K 1G 5W 7S 3 2M 4K 3G 8S 4 3M 5G 5 7G ... 20 想要轉成 A B 1 甲 1M 2 甲 2M 3 甲 3M 4 乙 2K 5 乙 4K 6 丙 1G 7 丙 3G 8 丙 5G 9 丙 7G 10 丁 5W ... 20 申 可是參考了很多公式及陣列的公式一直沒辦法完成,請問版大是否能指導一下,謝謝
請參考:https://isvincent.pixnet.net/blog/post/49315098 本例有使用輔助欄位,較易理解。