合并工作薄的方法大體上有3種:
1)數(shù)據(jù)量少的時候,手動復(fù)制各表粘貼到一個表??
2)使用WPS的合并表格功能:數(shù)據(jù)-合并表格;這個操作方便快捷,主要問題是收費(fèi),我2020年使用這個功能還未收費(fèi),2021年開始使用這個功能就需要購買會員了。不知道是否存在大數(shù)據(jù)殺熟,有些賬號登錄WPS合并表格功能是不收費(fèi)的。

3)通過Power Query合并多個工作?。?/p>
excel不能處理幾十萬條的數(shù)據(jù)量,使用Excel的插件Power Query可以做到
Excel 能存多少數(shù)據(jù)?Excel2003版本的xls格式文件可以支持最多65536行數(shù)據(jù),Excel2007以上版本的xlsx格式文件可以支持1048576行數(shù)據(jù)。在導(dǎo)入超過65536行數(shù)據(jù)的文件時可以選擇升級office版本后再進(jìn)行導(dǎo)入或?qū)⑽募袷奖4鏋閤lsx格式后再進(jìn)行導(dǎo)入。信息量達(dá)到6萬條的話,文件會相當(dāng)龐大,運(yùn)行緩慢,并頻繁死機(jī)同時幾十萬條就不要想了,整理不了
那么如何通過Power Query合并多個工作???
縱觀全網(wǎng),我推薦?PowerBI星球的文章:掌握這些技巧,Power Query批量合并Excel再也不會出問題了http://www.itdecent.cn/p/9539db699b4a
下面是我操作的實(shí)踐記錄:
以批量匯總文件夾的Excel工作簿為例,

在這個文件夾中,有1月品牌、2月品牌、3月品牌三個Excel工作表,每個工作表包含2個sheet,sheet1是需要合并的表,sheet2不需要合并。
我們先在文件夾外建一個新表:表1? 格式是xlsx

打開表1? 數(shù)據(jù)-獲取數(shù)據(jù)-自文件-從文件夾-找到我們放待合并工作表的文件夾。從這里也可以看出還能從數(shù)據(jù)庫里獲取數(shù)據(jù)。自文件-從工作薄 可以從一個工作表里合并工作薄

選中文件夾后 點(diǎn)擊打開就看到下圖

我們點(diǎn)擊轉(zhuǎn)換數(shù)據(jù)-合并并轉(zhuǎn)換數(shù)據(jù),不要點(diǎn)擊組合選項(xiàng)

之后的操作步驟如下:
1、刪除其他列:選中[Content],點(diǎn)擊鼠標(biāo)右鍵-刪除其他列? 或者選中[Content] 在標(biāo)題欄刪除列-刪除其他列。你也可以根據(jù)需要保留部分列。


2、新建自定義列: 標(biāo)題欄 添加列-自定義列

結(jié)果如圖:

3、自定義列公式:=Excel.Workbook([Content],true)? ?看下沒有語法錯誤?
等號后邊是一個M函數(shù),用來提取表格里面的信息,大家一定注意,M函數(shù)是嚴(yán)格區(qū)分大小寫的,不能將大小寫混用,符號必須在英文輸入法狀態(tài)下輸入

對于Excel工作簿文件,輸入:=Excel.Workbook([Content],true)的含義是
導(dǎo)入到PowerQuery中的數(shù)據(jù)默認(rèn)都是類型為binary類型,需要用函數(shù)將它解析出來

4、 展開自定義列 點(diǎn)擊自定義列的展開按鈕,取消使用原始列名作為前綴,確定


5、Item 篩選 要合并的sheet1,確定?

6、 展開Data列 -選擇你要的列名- 確定


7、左上角:文件-關(guān)閉并上載?

8、ctrl+s 保存 結(jié)果如下表

這種算是手工合并數(shù)據(jù),但相比自動合并,也就是輸入一個簡短的M函數(shù),多點(diǎn)了幾次鼠標(biāo)而已,熟練操作后,整個過程不會超過一分鐘。
@通過上面的描述和操作過程,涉及到兩個常用的PowerQuery合并技巧:
1, 為了避免出現(xiàn)雜亂的查詢文件,使用“轉(zhuǎn)換數(shù)據(jù)”,手動合并;
2. 新建自定義列時,Excel.Workbook的第二個參數(shù)不要省略,當(dāng)參數(shù)為true時,會自動將Excel的第一行用作標(biāo)題,可以省去一個步驟。
并且在手動合并的過程中,靈活運(yùn)用,可以方便的進(jìn)行各種形式的數(shù)據(jù)合并。
@另外發(fā)現(xiàn)最右側(cè)一列,點(diǎn)擊文本前的叉就可以返回上一步操作

@最開始為什么不選擇組合-合并并轉(zhuǎn)換數(shù)據(jù)?
組合-合并并轉(zhuǎn)換數(shù)據(jù)是大家最常用的操作方式,來看看這樣做的結(jié)果是什么。

雖然完成了一鍵批量合并,非常快捷,但是左邊查詢欄多出很多不需要的查詢,看著很亂,可是如果你想刪除,是不是怎么也刪除不掉?
這些查詢PowerQuery執(zhí)行合并操作時,默認(rèn)操作過程留下的中間文件,當(dāng)你點(diǎn)擊"合并并轉(zhuǎn)換數(shù)據(jù)"時,PowerQuery先根據(jù)其中一個文件作為示例,生成一個自定義函數(shù),然后調(diào)用自定義函數(shù),完成合并。
自動合并,除了會留下一堆雜亂的查詢無法刪除,還有個問題是,如果合并結(jié)果出錯(出錯的概率很高),需要修改示例文件或者自定義函數(shù)的代碼,但是對于初學(xué)者是比較困難的,很多人不知道如何修改。
所以不建議使用默認(rèn)的合并操作,在導(dǎo)入之后的預(yù)覽窗口,推薦你使用“轉(zhuǎn)換數(shù)據(jù)”
我們也可以合并文件夾中的某一類型數(shù)據(jù)。
@如果文件夾中的文件類型,不止一種,還可以選擇按文件類型合并。
假如文件夾中既有Excel格式,還有csv、txt格式的數(shù)據(jù)文件,如果直接全部合并會報(bào)錯,那么可以按類型分別單獨(dú)合并。
依然在【源】這個步驟中,可以按數(shù)據(jù)格式來篩選。
?csv、txt格式的數(shù)據(jù)合并技巧。
上面添加自定義列時用的是Excel.Workbook,是專門用來解析Excel格式的,當(dāng)數(shù)據(jù)格式為csv或txt時,需要換個解析函數(shù)。
csv、txt格式本質(zhì)上屬于同一種類型,都可以使用這個函數(shù)Csv.Document,為了避免中文出錯,一般情況下自定義列可以直接這樣寫:
=Csv.Document([Content],[Delimiter=",",? Encoding=936])
其中Delimiter=","是對逗號分割的數(shù)據(jù),如果你的源數(shù)據(jù)是其他符號分割,這里就改為相應(yīng)的符號;中文編碼一般為936,所以上面代碼中用了Encoding=936來避免中文亂碼的問題。
以上