如何在 Excel 中將單元格內容拆分到多行(場景 + 工具比較)
=TRANSPOSE(TEXTSPLIT(A1,","))
第 2 步:按下 Enter 鍵。
優勢 缺點 完全動態,會隨著更改自動更新。 無需插件或手動步驟。 僅適用於支持 TEXTSPLIT 和動態陣列的 Excel 版本(Excel 365)。 方法 3:Power Query – 拆分並擴展行(Microsoft 2016 及更高版本)Power Query 非常適合結構化、可重複的操作。它功能強大,刷新方便,對於批量數據轉換非常出色。
適用於:場景 1 (僅分割目標單元格)和場景 2(拆分單元格並保留其他列數據)
步驟:以場景 1 (僅分割目標單元格)為例
第 1 步:選擇範圍,進入 數據 > 獲取與轉換 > 從表格/範圍。
an
第 2 步:在創建表格窗口中,點擊 確定。(如果選擇範圍包含標題,勾選 我的表格有標題。)
第 3 步:在 Power Query 編輯器中,使用 分隔列 功能。
第 4 步:選擇或輸入分隔符,然後點擊 高級 選項,選擇 拆分為多行,然後點擊 確定。
第 5 步:選擇 關閉並加載 > 關閉並加載 或 關閉並加載至。
關閉並加載
功能:直接將查詢結果加載到默認位置。
關閉並加載至...
功能:提供自定義加載選項,允許用戶選擇數據存儲的位置和方式。最佳適用於:定期報告、大型數據集。
同樣的步驟適用於場景 2(在保留其他列數據的情況下拆分單元格)- 讓我們看看結果。
目標單元格範圍:
結果:
注意:在 Power Query 編輯器窗口中,選擇您想要拆分為多行的目標列,然後點擊 分隔列 下的 按分隔符。
優勢 缺點 完全自動化。 隨數據規模增長良好。 需要一點學習成本。 新數據需要刷新。 提示:添加修剪和清潔步驟來修復空白或特殊字符。
方法 4:Kutools 插件 – 點擊拆分如果您經常拆分單元格並且偏好基於 GUI 的解決方案,Kutools 是一個出色的工具。它可以將複雜的操作簡化為幾次點擊。
適用於:場景 1 (僅分割目標單元格)和場景 2(拆分單元格並保留其他列數據)
步驟:場景 1 (僅分割目標單元格)
第 1 步:選擇目標單元格。
第 2 步:進入 Kutools > 合併與拆分 > 拆分單元格。
第 3 步:選擇 拆分為多行 並定義分隔符。點擊 確定。/p>
第 4 步:選擇目標單元格。點擊 確定。
立即下載 步驟:場景 2(拆分單元格並保留其他列數據)
第 1 步:選擇您希望拆分到多行的列。
第 2 步:進入 Kutools > 合併與拆分 > 拆分數據到多行。
第 3 步:定義分隔符。點擊 確定。
同樣的步驟適用於場景 2(在保留其他列數據的情況下拆分單元格)- 讓我們看看結果。
目標單元格範圍:
結果:
優勢 缺點 非常易於使用。 只需點擊幾次即可處理大量數據。 需要插件(不是所有功能免費)。 立即下載 注意:30 天試用版提供所有功能供測試。
方法 5:VBA 腳本 – 完全自定義控制對於具有編程知識的用戶,VBA 提供了極大的靈活性。您可以根據確切的數據佈局和業務規則定制腳本。
適用於:場景 1 (僅分割目標單元格)和場景 2(拆分單元格並保留其他列數據)
步驟:
第 1 步:按 Alt + F11 打開 VBA 編輯器。
第 2 步:點擊 插入 > 模塊。
第 3 步:複製並粘貼以下 VBA 代碼。
場景 1 僅分割目標單元格
'Update by Extendoffice
Sub SplitCellToRows_Simple()
Dim InputCell As Range
Dim Values As Variant
Dim i As Long
Set InputCell = Range("A1") ' change A1 to your target cell
Values = Split(InputCell.Value, ",")
For i = 0 To UBound(Values)
InputCell.Offset(i, 1).Value = Trim(Values(i))
Next i
End Sub
場景 2 拆分單元格並保留其他列數據
'Update by Extendoffice
Sub SplitRowsWithOtherColumns()
Dim ws As Worksheet
Dim LastRow As Long, i As Long
Dim arr As Variant, j As Long
Dim SplitVals As Variant
Dim CurrentRow As Long
Set ws = ActiveSheet
LastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
For i = LastRow To 2 Step -1
If InStr(ws.Cells(i, 2).Value, ",") > 0 Then
SplitVals = Split(ws.Cells(i, 2).Value, ",")
For j = UBound(SplitVals) To 1 Step -1
ws.Rows(i + 1).Insert Shift:=xlDown
ws.Cells(i + 1, 1).Value = ws.Cells(i, 1).Value
ws.Cells(i + 1, 2).Value = Trim(SplitVals(j))
Next j
ws.Cells(i, 2).Value = Trim(SplitVals(0))
End If
Next i
End Sub
注意:此 VBA 腳本專門配置為當數據位於 A 到 B 列,且需要拆分的值在 B 列時運行。
缺點 必須保存為支持宏的文件 (.xlsm) 以備未來使用。 💡提示:
在運行宏之前務必備份您的數據。 在腳本中將 "," 替換為實際使用的分隔符(例如,用 ";" 表示分號或用 "|" 表示管道符),以匹配您的數據格式。 常見問題 空白行或列:通常是由尾部分隔符或隱藏空格引起的。 合併單元格錯誤:開始前請取消合併單元格。 Power Query 不刷新:修改源數據後記得點擊刷新。 錯誤的分隔符:分號與逗號的錯誤可能會導致整個結果偏移。 相關文章: 轉置範圍工具:輕鬆在 Excel 中將多行轉換為列和行 單位轉換工具:快速將十進制數字轉換為二進制/八進制/十六進制數字或反之亦然 最佳 Office 生產力工具 🤖 Kutools AI 助手:以智能執行為基礎,革新數據分析 |生成程式碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 增強函數… 熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不遺失數據 | 四捨五入(免公式)... 高級 LOOKUP:多條件 VLookup|多值 VLookup|多表查找|模糊查找... 高級下拉列表:快速創建下拉列表 |依賴型下拉列表 | 多選下拉列表... 列管理器:添加指定數量的列 | 移動列 | 切換隱藏列的顯示狀態 | 比較區域及列... 精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫(快捷文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線...)... 15 大工具集:12 項文本工具(添加文本、刪除特定字符…)|50+ 儀表 類型(甘特圖等)|40+ 實用 公式(基於生日計算年齡等)|19 項插入工具(插入QR码、根據路徑插入圖片等)|12 項轉換工具(金額轉大寫、匯率轉換等)|7 項合併與分割工具(高級合併行、分割儲存格等)|...及更多 使用 Kutools,語言任你選 — 支援英語、西班牙語、德語、法語、中文及超過40 種語言!運用 Kutools for Excel,全面提升您的 Excel 技能,體驗前所未有的高效。 Kutools for Excel 提供超過300 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...
查看更多 Kutools for Excel 詳情... 免費下載... Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀。 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。 提升您的生產力50%,每日可幫您減少數百次鼠標點擊! 查看更多 Office Tab 詳情... 免費下載...所有 Kutools 外掛,一次安裝Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。
全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI) 協同運作更順暢 — Office 應用間無縫提升生產力 30 天全功能試用 — 無需註冊、無需信用卡 最超值 — 一次購買,節省單獨外掛費用 查看更多 Kutools for Office 詳情... 免費下載...