Skip to main content

如何將列和行轉置/轉換為單列?

Author: Xiaoyang Last Modified: 2025-08-06

當您使用 Excel 工作表時,有時候您會遇到這個問題:如何將一組數據範圍轉換或轉置為單列?(請參見以下截圖:)現在,我將介紹三種快速解決此問題的方法。

original data arrow right convert range to single column

使用公式將列和行轉置/轉換為單列

使用 Kutools for Excel 將列和行轉置/轉換為單列good idea3

使用 VBA 代碼將列和行轉置/轉換為單列


使用公式將列和行轉置/轉換為單列

以下長公式可以幫助您快速將一組數據範圍轉置為單列,請按照以下步驟操作:

1. 首先,為您的數據範圍定義一個範圍名稱,選擇要轉換的範圍數據,右鍵點擊並從上下文選單中選擇「定義名稱」。在新建名稱對話框中,輸入您想要的範圍名稱,然後點擊確定。請參見截圖:

define a range name for the range of data

2. 指定範圍名稱後,點擊一個空白單元格,在本例中,我將點擊單元格 E1,然後輸入以下公式:=INDEX(MyData,1+INT((ROW(A1)-1)/COLUMNS(MyData)),MOD(ROW(A1)-1+COLUMNS(MyData),COLUMNS(MyData))+1)

備註MyData 是所選數據的範圍名稱,您可以根據需要更改它。

3. 然後向下拖動公式直到顯示錯誤信息。範圍內的所有數據都已轉置為單列。請參見截圖:

 input a formula to get the result


使用 Kutools for Excel 將列和行轉置/轉換為單列

也許公式太長難以記住,VBA 代碼對您有一些限制,在這種情況下,請不要擔心,這裡我要向您介紹一個更簡單且多功能的工具——Kutools for Excel,利用其轉換區域功能,您可以快速便捷地解決這個問題。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

免費安裝 Kutools for Excel 後,請按照以下步驟操作:

1. 選擇要轉置的範圍。

2. 點擊 Kutools > 轉換區域,請參見截圖:

click Transform Range feature of kutools

3. 在轉換區域對話框中,選擇 區域轉單列選項,請參見截圖:

select Range to single column option

4. 然後點擊確定,並指定一個單元格來放置結果,從彈出框中選擇。

specify a cell to put the result

5. 點擊確定,多列和多行數據已被轉置為單列。
the range data has been transposed into a one column

如果您想將單列轉換為具有固定值的範圍,您也可以使用轉換區域功能快速處理它。
convert one column to a range with kutools


使用 VBA 代碼將列和行轉置/轉換為單列

使用以下 VBA 代碼,您還可以將多列和多行合併為單列。

1. 按住 ALT + F11 鍵打開 Microsoft Visual Basic for Applications 窗口。

2. 點擊插入 > 模塊,並將以下代碼粘貼到模塊窗口中。

Sub ConvertRangeToColumn()
'Updateby20131126
Dim Range1 As Range, Range2 As Range, Rng As Range
Dim rowIndex As Integer
xTitleId = "KutoolsforExcel"
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Source Ranges:", xTitleId, Range1.Address, Type:=8)
Set Range2 = Application.InputBox("Convert to (single cell):", xTitleId, Type:=8)
rowIndex = 0
Application.ScreenUpdating = False
For Each Rng In Range1.Rows
    Rng.Copy
    Range2.Offset(rowIndex, 0).PasteSpecial Paste:=xlPasteAll, Transpose:=True
    rowIndex = rowIndex + Rng.Columns.Count
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub

3. 按 F5 鍵運行代碼,將顯示一個對話框供您選擇要轉換的範圍。請參見截圖:

vba code to select the data range

4. 然後點擊確定,另一個對話框將顯示供您選擇單個單元格以輸出結果,請參見截圖:

vba code to select a cell to put the result

5. 點擊確定,然後範圍內的單元格內容被轉換為單列列表,請參見截圖:

vba code to get the result


相關文章

如何在 Excel 中將行轉換為列?

如何在 Excel 中將單列轉置/轉換為多列?

如何將列和行轉置/轉換為單行?

最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!