【Google Sheet】試算表行列互換、轉置怎麼做?TRANSPOSE 函數分享

  • Post author:
Home » 莫非工具 » Google Sheets » 【Google Sheet】試算表行列互換、轉置怎麼做?TRANSPOSE 函數分享

使用情境

今天的文章想分享,在試算表做資料處理,遇到需要「轉置」(即行列互換)的情境時,可以用什麼方法解決。

假設你收到一份這樣的資料:

你希望可以進行行列互換,即原本第一行中的週一、週二 …. 週五調整到 A 欄,原先 A 欄內容調整到第一行,如下圖:

這樣可以怎麼做呢?

💡 本文範例請點選此連結獲取,請大家點選:左上角檔案 > 建立副本,就可以編輯囉

方法一:貼上轉置資料

第一步,先選取你想轉置的區域。

這邊我們選取 A1~F5 區間,也就是希望轉置的範圍。

第二步,複製此區域。

你可以使用快捷鍵 Ctrl + C 進行複製,或是點選:編輯 > 複製。

第三步,回到試算表上,將滑鼠選在你打算貼上的格子處。

這邊我們選在 A8。

第四步,點選:編輯 > 選擇性貼上 > 貼上轉置資料

資料就完成轉置啦!

如果你仔細看會有幾個小發現:

  • 資料格式也會複製過來。舉例:原本週一~週五的黃底,也跟著一起貼過來了。
  • 資料公式也會複製過來。舉例:客單價的公式是用 GMV / 訂單(第四行除以第三行),貼上之後依然是 GMV / 訂單(D 欄除以 C 欄)
  • 「貼上轉置資料」是一次性:如果你更新原本的資料,新的資料並不會跟著轉置過來。

為了解決最後一個問題,我們希望隨著原本資料的更新,也能跟著轉置,接下來會跟大家介紹 TRANSPOSE 函數的應用。


方法二:TRANSPOSE 函數

TRANSPOSE 函數的公式為:

= TRANSPOSE(範圍)

以相同例子來看,若我們想針對此數據進行行列互換,只需要在 A8 處下公式:

=TRANSPOSE(A1:F5)

再點選 Enter 後就可以得到同樣的結果啦!

另外 TRANSPOSE 函數與 IMPORTRANGE 函數有異曲同工之妙。假設你在下 TRANSPOSE 函數時,寫下:

=TRANSPOSE(1:5)

除了可以得到相同結果,當你在原數據新增一欄週六,原本下的 TRANSPOSE 函數也會幫你一同更新資料。

不過 TRANSPOSE 函數沒辦法將原先的格式也一併複製過來,在這點上以貼上轉置資料會更加方便!


TRANSPOSE + IMPORTRANGE

另一個 TRANSPOSE 實用的場景是搭配 IMPORTRANGE 函數使用。

這邊幫大家複習 IMPORTRANGE 的公式為:

=importrange("試算表網址", "試算表匯入範圍") 

如果與 TRANSPOSE 合併使用,則會寫成:

=transpose(importrange("試算表網址", "試算表匯入範圍")) 

以相同的範例,我們希望 “raw” 分頁上的數據,都以行列互換的方式呈現,因此可以寫成:

=transpose(importrange("https://docs.google.com/spreadsheets/d/1tEsSHiTyCrWC_EHbkYbTtfP2Obn87Q-E4OkA1BUYcec/edit?gid=1070453391#gid=1070453391","raw!A:Z"))

這麼一來,就達成資料自動化轉置的目的囉!

Murphy

我是Murphy,是一名職場人。這裡主要分享職場問題、職場話題、求職資訊,還有那些我所熱愛的事物。

歡迎留言,與我們分享你的看法!