在 Mac 版 Excel (Power Query) 中匯入和結合資料

套用到
Mac 版 Microsoft 365 Excel

Mac 版 Excel 結合了 Power Query (也稱為「取得及轉換」) 技術,可在匯入、重新整理和驗證資料來源、管理 Power Query 資料來源、清除認證、更改檔案式資料來源的位置、以及將資料形成符合您需求的表格時提供更強大的功能。 也可以使用 VBA 建立 Power Query 査詢。

匯入資料來源

注意

只能在測試人員 Beta 中匯入 SQL Server 資料庫資料來源。

您可以使用 Power Query 從各種資料來源將資料匯入 Excel:Excel 活頁簿、文字/CSV、XML、JSON、SQL Server 資料庫、SharePoint Online 清單、OData、空白資料表和空白査詢。

  1. 選擇 資料>獲取資料

    PQ Mac 取得資料 (Power Query).png

  2. 若要選取所需的資料來源,請選取 [取得資料 (Power Query)]

  3. 「選擇資料來源 」對話框中,選擇其中一個可用的資料來源。

    在對話方塊中要選取的資料來源範例

  4. 連線至資料來源。 欲了解更多如何連接每個資料來源,請參閱 「從資料來源匯入資料」。

  5. 選擇要匯入的資料。

  6. 點擊 載入 按鈕即可載入資料。

結果

匯入的資料將顯示在新工作表中。

查詢的一般結果

後續步驟

若要使用 Power Query 編輯器結合和轉換資料,請選取 [轉換資料]。 如需詳細資訊,請參閲使用 Power Query 編輯器結合資料

使用 Power Query 編輯器結合資料

注意

此功能已向執行版本 16.69 (23010700) 或更新版本的 Mac 版 Excel 的 Microsoft 365 使用者正式推出。 如果你是 Microsoft 365 訂閱者, 務必確保你擁有最新版本的 Office。

程序

  1. 選擇資料>取得資料 (Power Query)

  2. 要開啟查詢編輯器,請選擇啟動 Power Query 編輯器

    PQ Mac Editor.png

    秘訣

    您也可以存取 Query 編輯器,方法是選取 [取得資料 (Power Query)],選擇資料來源,然後按一下 [下一步]

  3. 像在 Windows 版 Excel 中一樣,使用 Query 編輯器來結合和轉換資料。

    Power Query 編輯器

    如需詳細資訊,請參閱 [適用於 Excel 的 Power Query 說明]

  4. 完成後,選擇 「關閉 &>載入」。

結果

新匯入的資料將顯示在新工作表中。

查詢的一般結果

重新整理資料來源

你可以重新整理以下資料來源:SharePoint 檔案、SharePoint 清單、SharePoint 資料夾、OData、文字/CSV 檔案、Excel 工作簿 (.xlsx) 、XML 和 JSON 檔案、本地資料表與範圍、Microsoft SQL Server 資料庫,以及資料夾。

第一次重新整理

第一次嘗試重新整理活頁簿査詢中檔案式資料來源時,可能需要更新檔案路徑。

  1. 依次選取 [資料]、 [取得資料] 旁邊的箭頭、然後選取 [資料來源設定]。 顯示 [資料來源設定] 對話方塊。
  2. 選取連線,然後選取 [變更檔案路徑]
  3. 檔案路徑 對話框中,選擇一個新位置,然後選擇 「取得資料」。
  4. 請選取 [關閉]。

後續重新整理

若要重新整理:

  • 工作簿中的所有資料來源,選擇「 全部>資料重新整理」。
  • 特定資料來源,以滑鼠右鍵按一下工作表上的査詢表,然後選取 [重新整理]
  • 一個樞紐分析表,選擇樞紐分析表中的一個儲存格,然後選擇「樞>紐分析、重新整理資料」。

輸入並清除認證

首次存取 SharePoint、SQL Server、OData 或其他要求權限的資料來源時,必須提供相應認證。 您可能還需要清除認證以輸入新的認證。

輸入驗證

當您首次重新整理査詢時,系統可能會要求您登入。 選取驗證方法並指定登入認證以連線至資料來源並繼續重新整理。

若需登入,則會出現 輸入憑證 對話框。

例如:

  • SharePoint 認證:

    Mac 上的 SharePoint 認證提示

  • SQL Server 認證:

    用於輸入伺服器、資料庫和認證的 [SQL Server] 對話方塊

清除驗證

  1. 選擇 >取得資料>資料來源設定」。
  2. [資料來源設定] 對話方塊中,選取所需連線。
  3. 在底部選擇 「清除權限」。
  4. 確認這是您想要執行的動作,然後選取 [删除]

撰寫和傳輸 Power Query VBA 程式碼

雖然在 Mac 版 Excel 中無法使用 Power Query 編輯器進行撰寫,但 VBA 確實支援 Power Query 撰寫。 將檔案中的 VBA 程式碼模組從 Windows 版 Excel 傳輸到 Mac 版 Excel 需要兩個步驟。 本節末尾提供了範例程式。

步驟一:使用 Windows 版 Excel

  1. 在 Excel Windows 中,使用 VBA 開發査詢。 使用 Excel 物件模型中以下實體的 VBA 程式碼,也能在 Mac 版 Excel 中運作:Queries 物件、WorkbookQuery 物件、Workbook.Queries 屬性。欲了解更多資訊,請參閱 Excel VBA 參考資料

  2. 在 Excel 中,請確保已按 ALT+F11 開啟 Visual Basic 編輯器處於開啟狀態。

  3. 以滑鼠右鍵按一下模組,然後選取 [匯出檔案]。 會出現 匯出 對話框。

  4. 輸入檔案名稱,確保副檔名為 .bas,然後選取 [儲存]

  5. 將 VBA 檔案上傳至線上服務,以便從 Mac 存取檔案。

    您可以使用 Microsoft OneDrive。 如需詳細資訊,請參閱在 Mac OS X 上與 OneDrive 同步檔案

步驟二:Mac 版 Excel

  1. 將 VBA 檔案下載到本機檔案,即您在「第一步:Windows 版 Excel」中儲存並上傳至線上服務的 VBA 檔案。
  2. 在 Mac 版 Excel 中,選擇工具>巨集>視覺基礎編輯器[Visual Basic 編輯器] 視窗將出現。
  3. 在 [專案] 視窗中以滑鼠右鍵按一下物件,然後選取 [匯入檔案][匯入檔案] 對話方塊將出現。
  4. 找到 VBA 檔案,然後選取 [開啟]

範例程式碼

以下是一些您可以調整和使用的基本程式碼。 這是範例査詢,用於建立值為 1 到 100 的清單。


Sub CreateSampleList()
  ActiveWorkbook.Queries.Add Name:="SampleList", Formula:= _
    "let" & vbCr & vbLf & _
      "Source = {1..100}," & vbCr & vbLf & _
      "ConvertedToTable = Table.FromList(Source, Splitter.SplitByNothing(), null, null, ExtraValues.Error)," & vbCr & vbLf & _
      "RenamedColumns = Table.RenameColumns(ConvertedToTable,{{""Column1"", ""ListValues""}})" & vbCr & vbLf & _
    "in" & vbCr & vbLf & _
      "RenamedColumns"
  ActiveWorkbook.Worksheets.Add
  With ActiveSheet.ListObjects.Add(SourceType:=0, Source:= _
    "OLEDB;Provider=Microsoft.Mashup.OleDb.1;Data Source=$Workbook$;Location=SampleList;Extended Properties=""""" _
    , Destination:=Range("$A$1")).QueryTable
    .CommandType = xlCmdSql
    .CommandText = Array("SELECT * FROM [SampleList]")
    .RowNumbers = False
    .FillAdjacentFormulas = False
    .PreserveFormatting = True
    .RefreshOnFileOpen = False
    .BackgroundQuery = True
    .RefreshStyle = xlInsertDeleteCells
    .SavePassword = False
    .SaveData = True
    .AdjustColumnWidth = True
    .RefreshPeriod = 0
    .PreserveColumnInfo = True
    .ListObject.DisplayName = "SampleList"
    .Refresh BackgroundQuery:=False
  End With
End Sub

另請參閱

適用於 Excel 的 Power Query 說明

與 Mac 版 Excel 相容的 ODBC 驅動程式

建立樞紐分析表來分析工作表的資料