知道怎么合并同一個(gè)文件夾下的多個(gè)Excel文件,其代碼是:
let
源 = Folder.Files("C:\Users\王華庭\Desktop\測(cè)試與練習(xí)\省級(jí)單位模板測(cè)試"),
刪除的其他列 = Table.SelectColumns(源,{"Content"}),
已添加自定義 = Table.AddColumn(刪除的其他列, "展開(kāi)二進(jìn)制", each Excel.Workbook([Content])),
#"展開(kāi)的“展開(kāi)二進(jìn)制”" = Table.ExpandTableColumn(已添加自定義, "展開(kāi)二進(jìn)制", {"Name", "Data", "Item", "Kind", "Hidden"}, {"Name", "Data", "Item", "Kind", "Hidden"}),
刪除的其他列1 = Table.SelectColumns(#"展開(kāi)的“展開(kāi)二進(jìn)制”",{"Data"}),
#"展開(kāi)的“Data”" = Table.ExpandTableColumn(刪除的其他列1, "Data", {"Column1", "Column10", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9"}, {"Column1", "Column10", "Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9"})
in
#"展開(kāi)的“Data”"
【注意:我發(fā)現(xiàn)將Data表展開(kāi)后,如果原始Excel中有多個(gè)表格,且表格列數(shù)不一樣時(shí),很可能PowerQuery會(huì)按照列數(shù)少的表格來(lái)設(shè)置展開(kāi)后的表格列,這樣就可能漏掉關(guān)鍵列的數(shù)據(jù)。所以,最好在展開(kāi)之前篩選下,或者直接將原始表格里那些不要的表格干掉,只留下結(jié)構(gòu)一模一樣的表格】
但是用同樣的方法去合并csv文件卻不行,無(wú)意中直接點(diǎn)擊Binary列的展開(kāi)按鈕,獲得一個(gè)csv文件,當(dāng)我雙擊時(shí),奇跡發(fā)生了:我獲得了我想要的結(jié)果。代碼如下:
let
源 = Folder.Files("C:\mypath\MyCsvFolder"),
刪除的其他列 = Table.SelectColumns(源,{"Content"}),
合并的二進(jìn)制 = Binary.Combine(刪除的其他列[Content]),
#"導(dǎo)入的 CSV" = Csv.Document(合并的二進(jìn)制,[Delimiter=",", Columns=9, Encoding=936, QuoteStyle=QuoteStyle.None]),
提升的標(biāo)題 = Table.PromoteHeaders(#"導(dǎo)入的 CSV"),
更改的類(lèi)型1 = Table.TransformColumnTypes(提升的標(biāo)題,{{"賬號(hào)", type text}})
in
更改的類(lèi)型1
合并一個(gè)文件夾下面的Excel文件,可以反過(guò)來(lái)像csv文件那樣照貓畫(huà)虎不?實(shí)際測(cè)試結(jié)果是不行。
先貼代碼:
let
源 = Folder.Files("C:\Users\王華庭\Desktop\測(cè)試與練習(xí)\省級(jí)單位模板測(cè)試"),
刪除的其他列 = Table.SelectColumns(源,{"Content"}),
合并的二進(jìn)制 = Binary.Combine(刪除的其他列[Content]),
#"導(dǎo)入的 Excel" = Excel.Workbook(合并的二進(jìn)制)
in
#"導(dǎo)入的 Excel"
代碼運(yùn)行的結(jié)果如下:

出錯(cuò)啦
所以,合并Excel文件,還是老老實(shí)實(shí)按照常規(guī)辦法來(lái)。
題外話(huà),如果合并TXT文件呢?
經(jīng)過(guò)測(cè)試,TXT文件會(huì)被當(dāng)成csv文件來(lái)處理,所以可以按照合并csv文件的方式來(lái)操作。唯一需要注意的是,原始TXT文件必須選擇正確的編碼,比如中文最好用記事本(NotePad++貌似無(wú)法選擇編碼,也許是我不會(huì)用)另存為UTF-8格式,否則會(huì)出現(xiàn)亂碼。