將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

如果您或您的公司將數據存儲在 OneDrive 雲或 SharePoint 公司門戶中,則使用 Excel 中的 Power Query 或從 Power BI 直接連接到它可能會非常具有挑戰性。

當我曾經遇到類似的問題時,我驚訝地發現沒有“合法”的方法可以解決它。 出於某種原因,Excel 甚至 Power BI(傳統上連接器集更寬)中的可用數據源列表不包括連接到 OneDrive 文件和文件夾的能力。

因此,下面提供的所有選項在某種程度上都是“拐杖”,需要一個小而手動的“用文件完成”。 但是這些拐杖有一個很大的優勢——它們有效🙂

有什麼問題?

給那些誰的簡短介紹 在過去的 20 年裡一直處於昏迷狀態 不在主題中。

OneDrive 是 Microsoft 的一項云存儲服務,有多種風格:

  • OneDrive 個人版 – 對於普通(非公司)用戶。 他們免費為您提供 5GB + 額外空間,只需支付少量月費。
  • OneDrive商業 – 企業用戶和 Office 365 訂閱者的選項,具有更大的可用容量(從 1TB 或更多)和版本存儲等附加功能。

OneDrive for Business 的一個特例是將數據存儲在 SharePoint 企業門戶上——在這種情況下,OneDrive 實際上是 SharePoint'a 的庫之一。

可以通過 Web 界面(https://onedrive.live.com 網站或公司 SharePoint 網站)或通過將所選文件夾與您的 PC 同步來訪問文件:

將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

通常這些文件夾存儲在驅動器 C 上的用戶配置文件中——它們的路徑看起來像 C:用戶用戶名OneDrive)。 一個特殊的程序監控文件的相關性和所有更改的同步 - АOneDrive 紳士 (屏幕右下角的藍色或灰色雲):

將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

現在是主要的。

如果我們需要將數據從 OneDrive 加載到 Excel(通過 Power Query)或 Power BI,那麼當然我們可以指定本地文件和文件夾作為源以通常的方式通過 獲取數據 - 從文件 - 從書/從文件夾 (獲取數據 - 從文件 - 從工作簿/文件夾)它不會直接鏈接到 OneDrive 雲.

也就是說,將來,例如,當其他用戶更改雲中的文件時,我們 需要先同步 (這種情況發生了很長時間,並不總是很方便)而且只有 然後更新我們的查詢 Power BI 中的 Power Query 或模型。

自然,問題就來了: 如何直接從 OneDrive/SharePoint 導入數據,從而直接從雲端加載數據?

選項 1:從 OneDrive for Business 或 SharePoint 連接到圖書

  1. 我們在 Excel 中打開這本書——同步的 OneDrive 文件夾中的本地副本作為常規文件。 或者先在 Excel Online 中打開網站,然後點擊按鈕 在 Excel 中打開 (在 Excel 中打開).
  2. 造訪 文件 - 詳細信息 (文件-信息)
  3. 使用按鈕將雲路徑複製到書 複製路徑 (複製路徑) 在標題中:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  4. 在另一個 Excel 文件或 Power BI 中,您要在其中填寫數據,選擇命令 獲取數據——來自互聯網 (獲取數據——來自網絡) 並將復制的路徑粘貼到地址字段中。
  5. 在路徑末尾刪除 ?網絡= 1 並點擊 OK:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  6. 在出現的窗口中,選擇授權方式 組織帳戶 (組織帳戶) 然後點擊按鈕 登入 (登錄):

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

    輸入我們的工作登錄密碼或從出現的列表中選擇一個公司帳戶。 如果你做的一切都是正確的,那麼銘文 登入 應該改為 以其他用戶身份登錄 (使用其他用戶帳戶登錄).

  7. 單擊按鈕 連接 (連接).

然後一切都與通常的書籍導入相同——我們選擇必要的工作表、智能表進行導入等。

選項 2:從 OneDrive Personal 連接到文件

要連接到個人(非企業)OneDrive 雲中的書籍,方法會有所不同:

  1. 我們在 OneDrive 網站上打開所需文件夾的內容並找到導入的文件。
  2. 右鍵單擊它並選擇命令 簡介 (嵌入) 或選擇文件並在頂部菜單中選擇類似的命令:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  3. 在右側出現的面板中,單擊 按鈕 創建 並複制生成的代碼:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  4.  將復制的代碼粘貼到記事本中並“使用文件完成”:
    • 刪除除引號中的鏈接之外的所有內容
    • 刪除塊 cid=XXXXXXXXXXXX&
    • 可替換詞 on 下載
    因此,源代碼應如下所示:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  5. 然後一切都與以前的方法相同。 在另一個 Excel 文件或 Power BI 中,您要在其中填寫數據,選擇命令 獲取數據——來自互聯網 (獲取數據——來自網絡),將編輯後的路徑粘貼到地址字段中,然後單擊確定。
  6. 出現授權窗口時,選擇選項 Windows 如有必要,輸入 OneDrive 的登錄密碼。

選項 3:從 OneDrive for Business 導入整個文件夾的內容

如果您需要一次填寫 Power Query 或 Power BI 的內容不是一個文件,而是整個文件夾(例如,使用報告),那麼方法會更簡單一些:

  1. 在資源管理器中,右鍵單擊 OneDrive 中我們感興趣的本地同步文件夾,然後選擇 現場查看 (在線查看).
  2. 在瀏覽器的地址欄中,複製地址的開頭部分 - 直到單詞 /_佈局:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  3. 在要加載數據的 Excel 工作簿或 Power BI Desktop 報表中,選擇命令 獲取數據 - 從文件 - 從 SharePoint 文件夾 (獲取數據 - 從文件 - 從 SharePoint 文件夾):

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

    然後將復制的路徑片段粘貼到地址字段中並單擊 OK:

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

    如果出現授權窗口,則選擇類型 微軟帳戶 (微軟帳戶),點擊按鈕 登入 (登錄),然後,在成功登錄後,在按鈕上 連接 (連接):

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

  4. 之後,請求並下載來自 SharePoint 的所有文件,並出現一個預覽窗口,您可以在其中安全地單擊 轉換數據 (轉換數據).
  5. 所有文件列表的進一步編輯及其合併已經在 Power Query 或 Power BI 中以標準方式進行。 要將搜索圈縮小到我們需要的文件夾,您可以使用按列過濾 文件夾路徑 (1) 然後使用列中的按鈕展開找到的文件的全部內容 內容 (2):

    將數據從 OneDrive 和 SharePoint 導入 Power Query / BI

備註: 如果 SharePoint 門戶中有大量文件,這種方法會比前兩種方法慢很多。

  • 使用 Power Query 組合來自不同文件的表
  • 什麼是 Power Query、Power Pivot、Power BI 以及它們如何為您提供幫助
  • 將書中所有工作表中的數據收集到一個表中
 

發表評論