數據匯總你會這麼做?相信大多數人都會異口同聲地回答到:複製粘貼,那如果有1000個表格呢?你還要複製粘貼嗎?
今天跟大家分享一個函數,輕鬆搞定數據匯總。它就是:Excel.Workbook這個函數是一個M函數,需要在PowerQurey 中才能使用,也就是需要Excel的版本最低在2016版,它能自動識別表頭,動態更新數據非常的方便,下面就讓我們來學習下吧
一、Excel.Workbook
Excel.Workbook:返回工作薄的內容,他獲取的結果是一個表格
語法:= Excel.Workbook(workbook,useheaders,delaytypes)
第一參數:workbook,工作薄所在路徑,參數類型為binary,也就是一個二進位文件
第二參數:useheaders,是否要將表格的第一行作為標題,可選參數,參數類型為邏輯值,true表示將第一行用作標題,默認為false
第三參數:delaytypes,延遲類別,可選參數,參數類型為邏輯值,參數不用管它,直接保持默認即可
以上就是這個函數的參數,如果你覺得聽得雲里霧裡的,只需要記得第一參數是路徑,第二參數是將表格中的第一行用作標題即可,下面就讓我們來看下它是如何實現數據匯總的
二、匯總一個Excel中的所有sheet
1.導入數據
首先我們新建一個Excel,然後點擊【數據】→【獲取數據】→【來自文件】→【從工作薄】在跳出的對話框中我們找到需要匯總的Excel工作薄點擊導入,當看到導航器的界面後,點擊Excel名稱,隨後直接點擊轉換數據,這樣的話就會進入power query的編輯界面

2.匯總數據
進入這個界面後我們可以在編輯欄欄中看到Excel.Workbook這個函數,我們可以看到他的第二參數為:null,這樣的話它是不會自動匹配表頭的
隨後我們點擊下方的幾個table看一下,會發現它們表頭是column1到column9不是我們需要的表頭,我們需要的表頭都是在表格中的第一行,這個時候可以將Excel.Workbook的第二參數更改為true將每個表格的第一行作為標題,這樣的話再點擊看下,每個table都有標題了

隨後我們僅保留mane和date這兩列數據,將其餘的都刪掉,然後點擊date欄位上的左右箭頭來深化數據,至此就把數據都匯總在一起了,它是可以自動匹配表頭的,最後只需點擊關閉並上載至,將數據載入到Excel即可

二、匯總多個Excel文件
1,載入數據
想要匯總多個Excel文件,我們就需要將這些Excel文件都放在一個文件夾中,隨後新建一個Excel然後點擊【數據】功能組→找到【獲取數據】→【來自文件】→【從文件夾】找到對應的文件夾後點擊確定,當看到導航器的界面之後我們直接點擊【轉換數據】這樣的話就會進入powerquery的編輯界面

2.刪除無用列
進入後我們僅僅保留Content與Name這兩列數據,將其餘的數據全部刪除掉即可,我們點擊Content這一列中的Binary就能在左下角看到一個Excel文件,我們需要的匯總的數據就在這裡

3.添加自定義列
我們添加一個自定義列,利用Excel.Workbook這個函數來獲取Binary中的所有數據,首先點擊【添加列】選擇【自定義列】在裡面輸入公式=Excel.Workbook([Content],true),然後點擊確定即可,這樣的話在後面就會多出一個自定義列,這個公式如果你不想設置的話直接複製我這個也是可以的,隨後我們點擊自定義右邊的左右箭頭來深化數據,在這裡僅僅選擇name(工作表名)和date(數據)這兩項,然後點擊確定即可

4.匯總數據
我們將Content這一列刪除掉,最後只需要在date這個欄位中點擊左右箭頭來深化數據,這樣的話就把數據都匯總完成,同樣的也在是主頁中選擇關閉並上載至將數據載入到excel即可

以上就是今天分享的方法,在這裡主要是使用了Excel.Workbook這個M函數來匯總的,它是可以實現自動匹配表頭,更改數據源一鍵刷新(點擊表格,點擊滑鼠右鍵找到刷新即可)
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/282189.html