![如何自動複製Excel中的列?](https://rvso.com/image/1451236/%E5%A6%82%E4%BD%95%E8%87%AA%E5%8B%95%E8%A4%87%E8%A3%BDExcel%E4%B8%AD%E7%9A%84%E5%88%97%EF%BC%9F.png)
每天我都必須取得超過 40 列且行數不斷增加(目前為 250 萬)的原始數據,並按照一定的格式進行準備。
假設我的原始資料有 5 列:
姓名 - 年份 - 國家 - 性別
我需要的是:
姓氏 - 性別 - 國家
這意味著我只需要一些列並且以不同的順序。
答案1
透過點選快速存取工具列上的重複來重複上一個操作。鍵盤快速鍵 按 CTRL+Y 或 F4。
答案2
250 萬行源自何處?不是 Excel,因為 Excel 工作表只能有 1,048,576 行。
如果您使用 Excel 2010 或 2013 中的資料模型,則可以處理超出 Excel 限制的數據,但資料在工作表中不可見。您可以使用 Power Query 將大量資料(超過 Excel 工作表限制)從不同源匯入到資料模型中。 Power Query 也可以用於轉換來源數據,例如刪除列和更改列的順序。
您可以將 Power Query 下載為 Excel 加載項這裡。它適用於大多數版本的 Excel 2010 和 2013,並將內建到 Excel 2016 中。
答案3
假設您的 5 列說明性原始資料位於 中Sheet1
,第 1 行包含標題姓名 - 年份 - 國家 - 性別,資料從第 2 行開始。
現在,我們將所需的 3 個標題放入 的第 1 行中Sheet2
,在 A2 中放入以下公式,然後將其向下/橫向拖曳:
=INDEX(Sheet1!$A2:$E2,MATCH(A$1,Sheet1!$A$1:$E$1,0))
這是一個水平查找,對於每一行,搜尋每一列以返回右列中的值。
如果這花費的時間太長(聽起來計算時間對您來說很重要),您可以只查找 ( MATCH
) 正確的列一次,然後index
關閉它。增加額外的一行 3 個值,例如,在Sheet2
with的第 2 行=MATCH(A$1,Sheet1!$A$1:$E$1,0)
(假設您的資料現在Sheet1
從第 3 行開始),現在放入=INDEX(Sheet1$A3:$E3,A$2)
並Sheet2!A3
填充 + 向下。