使用 Power Query 將多個檔案與儲存在單一資料夾中的相同結構描述合併為一個資料表。 例如,每個月您想要合併來自多個部門的預算活頁簿,其中欄數相同,但每個活頁簿中的列數和值不同。 設定完成後,您可以套用其他轉換,就像套用任何單一匯入的資料來源一樣,然後 重新整理資料 以查看每個月的結果。
備註 本主題說明如何合併資料夾中的檔案。 您也可以結合儲存在 SharePoint、Azure Blob 儲存體和 Azure Data Lake Storage 中的檔案。 過程類似。
開始之前
保持其簡單:
- 確定您要合併的所有檔案都包含在一個專用資料夾中,沒有無關的檔案。 否則,資料夾中的所有檔案和您選取的任何子資料夾都會包含在要合併的資料中。
- 每個檔案都應該具有相同的結構描述,並具有一致的欄標題、資料類型和欄數。 欄的順序不必與按欄名稱進行比對的順序相同。
- 可能避免針對可以有多個資料物件的資料來源使用不相關的資料物件,例如 JSON 檔案、Excel 活頁簿或 Access 資料庫。
從文字、CSV 或 XML 檔案匯入
每個檔案都遵循簡單的模式,每個檔案中只有一個資料表。
選取 [資料>] [從資料夾的檔案>取得資料>]。 此時會出現 [ 瀏覽] 對話方塊。
找出包含您要合併之檔案的資料夾。
資料夾中的檔案清單隨即顯示在 [資料夾路徑>] 對話方塊中<。 確認已列出您想要的所有檔案。
選取對話方塊底部的其中一個命令,例如, 合併>、合併 & 載入。 關於 所有這些命令一節中會討論其他命令。
如果您選取任何 [合併] 命令,[合併Files] 對話方塊隨即出現。 若要變更檔案設定,請從 [範例檔案] 方塊中選取每個檔案,視需要設定 [ 檔案來源]、[ 分隔符號] 和 [資料類型偵測 ]。 您也可以選取或清除對話方塊底部的 [略過有錯誤的檔案 ] 核取方塊。
選取 [確定]。
結果
Power Query 會自動建立查詢,將每個檔案的資料合併到工作表中。 建立的查詢步驟和欄位取決於您選擇的命令。 如需詳細資訊,請參閱 關於所有這些查詢一節。
從 JSON 匯入
選取 [資料>] [從資料夾的檔案>取得資料>]。 此時會出現 [ 瀏覽] 對話方塊。
找出包含您要合併之檔案的資料夾。
資料夾中的檔案清單隨即顯示在 [資料夾路徑>] 對話方塊中<。 確認已列出您想要的所有檔案。
選取對話方塊底部的其中一個命令,例如,[結合>]、[結合] & [轉換]。 關於 所有這些命令一節中會討論其他命令。
隨即會顯示 Power Query 編輯器。
[值] 欄是結構化 清單 欄。 選取 [展開
,然後選取 [ 展開至新列]。
[值] 欄位現在是結構化 記錄 欄位。 選取 [展開
圖示。 此時會出現一個下拉式對話方塊。
保持選取所有欄。 建議您清除 [使用原始資料行名稱做為前置詞 ] 核取方塊。 選取 [確定]。
選取包含資料值的所有欄。 選取 [首頁],即 [移除欄] 旁的箭號,然後選取 [移除其他欄]。
選取 [首頁>] 關閉 & 載入。
結果
Power Query 會自動建立查詢,將每個檔案的資料合併到工作表中。 建立的查詢步驟和欄位取決於您選擇的命令。 如需詳細資訊,請參閱 關於所有這些查詢一節。
從 Excel 或 Access 匯入
每個資料來源都可以有多個要匯入的物件。 Excel 活頁簿可以有多個工作表、Excel 表格或命名範圍。 Access 資料庫可以有多個資料表和查詢。
選取 [資料>] [從資料夾的檔案>取得資料>]。 此時會出現 [ 瀏覽] 對話方塊。
找出包含您要合併之檔案的資料夾。
資料夾中的檔案清單隨即顯示在 [資料夾路徑>] 對話方塊中<。 確認已列出您想要的所有檔案。
選取對話方塊底部的其中一個命令,例如, 合併>、合併 & 載入。 關於 所有這些命令一節中會討論其他命令。
在 Combine Files 對話方塊中:
- 在 [範例檔案 ] 方塊中,選取一個檔案,以做為建立查詢的範例資料。 您可以不選取物件,或只選取一個物件。 不過,您無法選取多個項目。
- 如果您有許多物件,請使用 [搜尋 ] 方塊來尋找物件,或使用 [ 顯示選項 ] 以及 [ 重新整理 ] 按鈕來篩選清單。
- 選取或清除對話方塊底部的 [略過有錯誤的檔案 ] 核取方塊。
選取 [確定]。
結果
Power Query 會自動建立查詢,將每個檔案的資料合併到工作表中。 建立的查詢步驟和欄位取決於您選擇的命令。 如需詳細資訊,請參閱 關於所有這些查詢一節。
使用 Combine Files 命令
若要獲得更多彈性,您可以使用 Combine Files 命令在 Power Query 編輯器中明確合併檔案。 假設來源資料夾混合了檔案類型和子資料夾,而且您想要鎖定具有相同檔案類型和結構描述的特定檔案,而不是其他檔案。 這可以提高效能並有助於簡化您的轉換。
選取 [資料>] [從資料夾的檔案>取得資料>]。 此時會出現 [ 瀏覽] 對話方塊。
找出包含您要合併之檔案的資料夾,然後選取 [ 開啟]。
資料夾和子資料夾中所有檔案的清單會顯示在 [資料夾路徑>] 對話方塊中<。 確認已列出您想要的所有檔案。
選取底部的 [轉換資料 ]。 Power Query 編輯器隨即開啟並顯示資料夾和任何子資料夾中的所有檔案。
若要選取您想要的檔案,請篩選欄位,例如 [副檔名] 或 [資料夾路徑]。
若要將檔案合併為單一資料表,請選取包含每個二進位 (通常為第一欄) 的 [內容] 欄,然後選取 [首頁>合併] Files。 [合併Files] 對話方塊隨即出現。
Power Query 會分析範例檔案,預設為清單中的第一個檔案,以使用正確的連接器並識別相符的資料行。
若要針對範例檔案使用不同的檔案,請從 「範例檔案」 下拉式清單中選取該檔案。
或者,在底部選取 [ 略過有錯誤的檔案] ,以從結果中排除這些檔案。
選取 [確定]。
結果
Power Query 會自動建立查詢,將每個檔案的資料合併到工作表中。 建立的查詢步驟和欄位取決於您選擇的命令。 如需詳細資訊,請參閱 關於所有這些查詢一節。
關於所有這些命令
您可以選取數個命令,每個命令都有不同的用途。
- 合併和轉換資料若要將所有檔案與查詢合併,然後啟動 Power Query 編輯器,請選取 [合併>、結合和轉換資料]。
- 合併和載入 若要顯示 [範例檔案] 對話方塊,建立查詢,然後載入到工作表,選取 [合併>] 合併和載入。
- 合併並載入至若要顯示 [範例檔案] 對話方塊,請建立查詢,然後顯示 [匯入] 對話方塊,選取 [合併>]、[合併] 和 [載入到]。
- 載入 若要建立包含一個步驟的查詢,然後載入至工作表,請選取 [載入>載入]。
- 載入至 若要使用一個步驟建立查詢,然後顯示 [匯入 ] 對話方塊,請選取 [載入>載入至]。
- 轉換資料若要使用一個步驟建立查詢,然後啟動 Power Query 編輯器,請選取 [轉換資料]。
關於所有這些查詢
無論您如何合併檔案,都會在 [ 査詢 ] 窗格中的 [協助程式查詢] 群組下建立數個支援查詢。
- Power Query 會根據範例查詢建立「範例檔案」查詢。
- 「轉換檔案」函數查詢會使用「參數 1」查詢,將每個檔案 (或二進位) 指定為「範例檔案」查詢的輸入。 此查詢也會建立包含檔案內容的 [ 內容 ] 欄,並自動展開 [結構化 記錄] 欄,以將欄資料新增至結果。 「轉換檔案」和「範例檔案」查詢會連結,因此對「範例檔案」查詢所做的變更會反映在「轉換檔案」查詢中。
- 包含最終結果的查詢位於 [其他查詢] 群組中。 根據預設,其名稱是您匯入檔案的來源資料夾。
若要進一步調查,請以滑鼠右鍵按一下每個查詢,然後選取 [編輯] 以檢查每個查詢步驟,並查看查詢如何協同運作。