Mac 版 Excel 結合了 Power Query (也稱為「取得及轉換」) 技術,可在匯入、重新整理和驗證資料來源、管理 Power Query 資料來源、清除認證、更改檔案式資料來源的位置、以及將資料形成符合您需求的表格時提供更強大的功能。 也可以使用 VBA 建立 Power Query 査詢。
匯入資料來源
注意
只能在測試人員 Beta 中匯入 SQL Server 資料庫資料來源。
您可以使用 Power Query 從各種資料來源將資料匯入 Excel:Excel 活頁簿、文字/CSV、XML、JSON、SQL Server 資料庫、SharePoint Online 清單、OData、空白資料表和空白査詢。
選取 [資料>] 取得資料。
若要選取所需的資料來源,請選取 [取得資料 (Power Query)]。
在 [選擇資料來源 ] 對話方塊中,選取其中一個可用的資料來源。
連線至資料來源。 若要深入瞭解如何連線到每個資料來源,請參閱 從資料來源匯入資料。
選擇要匯入的資料。
按一下 [ 載入 ] 按鈕載入資料。
結果
匯入的資料將顯示在新工作表中。
後續步驟
若要使用 Power Query 編輯器結合和轉換資料,請選取 [轉換資料]。 如需詳細資訊,請參閲使用 Power Query 編輯器結合資料。
使用 Power Query 編輯器結合資料
注意
此功能已向執行版本 16.69 (23010700) 或更新版本的 Mac 版 Excel 的 Microsoft 365 使用者正式推出。 如果您是 Microsoft 365 訂閱者, 請確定您有最新版的 Office。
程序
選取 [資料>取得資料] (Power Query) 。
若要開啟查詢編輯器,請選取 [啟動 Power Query 編輯器]。
秘訣
您也可以存取 Query 編輯器,方法是選取 [取得資料 (Power Query)],選擇資料來源,然後按一下 [下一步]。
像在 Windows 版 Excel 中一樣,使用 Query 編輯器來結合和轉換資料。
如需詳細資訊,請參閱 [適用於 Excel 的 Power Query 說明]。
完成後,選取 [首頁] [關閉] > & [載入]。
結果
新匯入的資料將顯示在新工作表中。
重新整理資料來源
您可以重新整理以下資料來源:SharePoint 檔案、SharePoint 清單、SharePoint 資料夾、OData、文字/CSV 檔案、Excel 活頁簿 (.xlsx) 、XML 和 JSON 檔案、本機表格和範圍、Microsoft SQL Server資料庫以及資料夾。
第一次重新整理
第一次嘗試重新整理活頁簿査詢中檔案式資料來源時,可能需要更新檔案路徑。
- 依次選取 [資料]、 [取得資料] 旁邊的箭頭、然後選取 [資料來源設定]。 顯示 [資料來源設定] 對話方塊。
- 選取連線,然後選取 [變更檔案路徑]。
- 在 [ 檔案路徑 ] 對話方塊中,選取新位置,然後選取 [ 取得資料]。
- 請選取 [關閉]。
後續重新整理
若要重新整理:
- 在活頁簿中的所有資料來源中,選取 [資料>重新整理全部]。
- 特定資料來源,以滑鼠右鍵按一下工作表上的査詢表,然後選取 [重新整理]。
- 在樞紐分析表中,選取樞紐分析表中的一個儲存格,然後選取 [樞紐分析表]> [分析] [重新整理資料]。
輸入並清除認證
首次存取 SharePoint、SQL Server、OData 或其他要求權限的資料來源時,必須提供相應認證。 您可能還需要清除認證以輸入新的認證。
輸入驗證
當您首次重新整理査詢時,系統可能會要求您登入。 選取驗證方法並指定登入認證以連線至資料來源並繼續重新整理。
如果需要登入,將顯示 [ 輸入認證] 對話方塊。
例如:
SharePoint 認證:
SQL Server 認證:
清除驗證
- 選取 [資料>取得資料來源>設定]。
- 在 [資料來源設定] 對話方塊中,選取所需連線。
- 在底部,選取 [ 清除權限]。
- 確認這是您想要執行的動作,然後選取 [删除]。
撰寫和傳輸 Power Query VBA 程式碼
雖然在 Mac 版 Excel 中無法使用 Power Query 編輯器進行撰寫,但 VBA 確實支援 Power Query 撰寫。 將檔案中的 VBA 程式碼模組從 Windows 版 Excel 傳輸到 Mac 版 Excel 需要兩個步驟。 本節末尾提供了範例程式。
步驟一:使用 Windows 版 Excel
在 Excel Windows 中,使用 VBA 開發査詢。 在 Excel 的物件模型中使用以下實體的 VBA 程式碼也可以在 Mac 版 Excel 中使用:Queries 物件、WorkbookQuery 物件、Workbook.Queries 屬性。如需詳細資訊,請參閱 Excel VBA 參考。
在 Excel 中,請確保已按 ALT+F11 開啟 Visual Basic 編輯器處於開啟狀態。
以滑鼠右鍵按一下模組,然後選取 [匯出檔案]。 隨即顯示 [ 匯出] 對話方塊。
輸入檔案名稱,確保副檔名為 .bas,然後選取 [儲存]。
將 VBA 檔案上傳至線上服務,以便從 Mac 存取檔案。
您可以使用 Microsoft OneDrive。 如需詳細資訊,請參閱在 Mac OS X 上與 OneDrive 同步檔案。
步驟二:Mac 版 Excel
- 將 VBA 檔案下載到本機檔案,即您在「第一步:Windows 版 Excel」中儲存並上傳至線上服務的 VBA 檔案。
- 在 Mac 版 Excel 中,選取 [工具>] [巨集] [>Visual Basic 編輯器]。 [Visual Basic 編輯器] 視窗將出現。
- 在 [專案] 視窗中以滑鼠右鍵按一下物件,然後選取 [匯入檔案]。 [匯入檔案] 對話方塊將出現。
- 找到 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