Skip to main content

Kutools for Office — 一套工具,五種功能。完成更多工作。

如何在Excel中將每隔一行移動到列?

Author Sun Last modified
move every other row to column sample data

在Excel中處理數據時,特別是導入的或非結構化的數據集,您可能會經常發現名字和相關值垂直排列在一列中。為了使這些數據更易讀且可用,通常需要將其轉換為表格格式——將每隔一行移動到列中。


使用公式將每隔一行移動到列

這是一種簡單的方法,利用Excel的INDEX函數提取交替行並將其顯示為列。如果您想將名字轉換為一列,年齡轉換為下一列,請應用以下公式:

1. 在C2單元格中,輸入以下公式到空白單元格中,然後根據需要向下拖動公式。該公式從第2行開始獲取每隔一行的值(名字)。

=INDEX($A:$A, (ROW(A1)-1)*2 + 2)
提示:此公式通過將當前行號乘以2然後加2來引用正確的位置。
extract every other cell in a column with formula

2. 在D2單元格中,輸入以下公式以提取替代數據,向下拖動公式填充單元格。

 =INDEX($A:$A, (ROW(A1)-1)*2 + 3)
提示:此公式從包含年齡的行(從第3行開始的奇數行)中獲取值。
extract every other cell in another column with formula
公式解釋:
  • INDEX($A:$A, ...):查看A列並返回特定行號的值。
  • ROW(A1):返回當前行號。在A1中,它返回1。當您向下拖動公式時,它變成A2(第2行),A3(第3行)等。
  • (ROW(A1)-1)*2 + 2:這計算從A列中提取的行號。

因此,該公式從A2、A4、A6、A8…提取值,這意味著每隔一行(從第2行開始)。


使用Kutools for Excel將每隔一行移動到列

如果您更喜歡用戶友好、非公式的解決方案,Kutools for Excel提供了一個功能,可以讓您輕鬆地將行轉置為列。

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

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

  1. 點擊Kutools > 區域 > 轉換區域。
    extract every other cell in a column with formula
  2. 在“轉換區域”對話框中,設置以下操作:
    • 選擇要移動每隔一行的範圍
    • 在“轉換類型”部分中勾選“單列轉區域”,
    • 然後勾選“固定值”,然後在“每條記錄的行數”部分列表中選擇或輸入2。
    • 最後,點擊“確定”按鈕。
      extract every other cell in a column with formula
  3. 在隨後出現的提示框中,選擇一個單元格來輸出結果,參見截圖:
    extract every other cell in a column with formula
  4. 點擊“確定”,Kutools將自動將每隔一行移動到單獨的列中。
    extract every other cell in a column with formula

使用VBA代碼將每隔一行移動到列

如果您經常需要執行此任務,VBA宏可以自動化該過程,使其更快、更高效。

1. 同時按下鍵盤上的F11 + Alt鍵打開Microsoft Visual Basic for Applications窗口。

2. 然後點擊插入 > 模塊以插入新模塊窗口。然後將以下VBA代碼複製到窗口中。

VBA:將每隔一行移動到列。

Sub MoveRange()
'Updateby Extendoffice
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set InputRng = InputRng.Columns(1)
For i = 1 To InputRng.Rows.Count Step 2
    OutRng.Resize(1, 2).Value = Array(InputRng.Cells(i, 1).Value, InputRng.Cells(i + 1, 1).Value)
    Set OutRng = OutRng.Offset(1, 0)
Next
End Sub

3. 點擊“運行”按鈕或鍵盤上的F5鍵,彈出對話框供您選擇要移動的範圍。參見截圖:
extract every other cell in a column with formula

4. 然後點擊“確定”以顯示另一個對話框以選擇單元格輸出結果。參見截圖:
extract every other cell in a column with formula

5. 點擊“確定”,您可以看到如下所示的結果:
extract every other cell in a column with formula


🎯 結論:

在Excel中將每隔一行移動到列的每一種方法都有其自身的優勢,具體取決於您的需求:

  • 公式方法:最適合快速、一次性的小數據集任務。無需額外工具,但對於大範圍數據可能會變慢。
  • Kutools for Excel:非常適合偏好基於點擊的簡單解決方案而不涉及復雜公式或編碼的用戶。Kutools提供了用戶友好的界面以進行快速轉換。
  • VBA宏:自動化和重複性任務的最佳選擇,特別是針對大型數據集。需要基本的編程知識,但提供了最大的靈活性。

選擇適合您需求的方法,無論您是在處理小數據集還是需要更大規模的解決方案來處理更大的數據集。如果您有興趣探索更多Excel技巧和竅門,我們的網站提供了成千上萬的教程,幫助您掌握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 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...


Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單

  • 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀
  • 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。
  • 提升您的生產力50%,每日可幫您減少數百次鼠標點擊!

所有 Kutools 外掛,一次安裝

Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。

Excel Word Outlook Tabs PowerPoint
  • 全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro
  • 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI)
  • 協同運作更順暢 — Office 應用間無縫提升生產力
  • 30 天全功能試用 — 無需註冊、無需信用卡
  • 最超值 — 一次購買,節省單獨外掛費用