根據我的經驗,合并同一個文件夾下的多個Excel文件是件很簡單的事情。但是奇怪的是,我在網上閑逛時,看到一些PowerQuery大牛寫的帖子,都認為這個工作很難,還給出了不同的牛逼解決辦法:
1.Combining Data From Multiple Excel Workbooks With Power Query–The Easy Way!
2.http://www.excelguru.ca/blog/2015/02/25/combine-multiple-excel-workbooks-in-power-query/【事實上拜偉大的墻所賜,這個網站在不翻墻的情況下是forbidden的。在辦公室翻墻困難,所以我實際是沒看著個帖子】
3.甚至Chris Webb在《Creating M Functions From Parameterised Queries In Power BI》還專門掩飾了如何使用Power BI Desktop的新功能來直接從UI實現同一文件夾下的多文件合并。
但實際上,合并同一個文件夾下的多個Excel文件就只需要八步:
1.新建一個基于文件夾的查詢
2.導航到需要合并的文件夾確定之后預覽數據
3.編輯查詢,刪除不需要的多余列,如果有冗余數據,也可以一并通過篩選剔除,如圖中的臨時文件其實可以篩選剔除。
4.添加一個自定義列,提取出Excel文件內容
5.展開自定義列,選擇Data,因為詳細記錄在Data字段里邊
6.Data列其實每一行都是一個表格,所以繼續展開,就得到詳細的記錄了。
7.根據需要對詳細記錄做其他操作。
除了第四步需要通過添加自定義列的方式,調用Excel.Workbook()函數來提取Binary中的數據,這一步稍微有點復雜外,其他全部是通過UI就實現了。而且這些Excel文件的所有Sheets都會被合并到一個表格中。如果只需要合并第一個Sheet,則可以在第五步展開列時,把Name或Item也勾選上,以此來篩選Sheet名稱。
所以我還是沒想通合并文件夾下的多個文件究竟復雜在什么地方。