本日は、SharePointOnline上に保管したExcelファイルをVBAを使用して開く方法を解説いたします。
クラウドの利用が広がり、社内のファイルサーバーからSharePointOnlineに移行し、
SharePointOnline上のファイルをVBAで開く方法を知りたいと思う方が多いのではないでしょうか。
SharePointOnlineのExcelファイルのリンクを取得する
通常のVBAでファイルを開く方法は、パソコン上のパスを指定します。
SharePointOnline上のファイルを開く場合は、URLを指定します。
URLの取得方法は、下記になります。
まずは、SharePointOnlineを開きます。

該当のファイルをExcelアプリで開きます。
ちなみにExcelファイルは未記入の空ファイルです。
ファイルを選択し右クリック→「開く」→「アプリで開く」 を選択します。

Excelファイルが開きます。
開いたら、メニューから「ファイル」をクリックします。

今開いているSharePointOnline上の「Book1.xlsx」が表示されています。

右クリックし、「パスをクリップボードにコピー」をクリックします。

これでSharePoint上のExcelのURLを取得できました。
Excel VBAでSharePointのファイルを開く方法
取得したURLをVBAに記載します。
WorkBooks.Openを使い、先程のコピーしたURLを貼り付けます。
下記のようなコードを記載しました。
編集もできるか確認するため、A1に値を記入し、saveコマンドで保存してみます。
Sub sharepoint_excel_open()
Workbooks.Open ("https://ドメイン名.sharepoint.com/sites/msteams_643e74/Shared%20Documents/General/Book.xlsx?web=1")
Range("A1").Value = "test1"
ActiveWorkbook.Save
End Sub

実行してみます。
保存できているか確認するために、SharePointOnline上のExcelをブラウザで開きます。


まとめ
本日は、VBAを使用し、SharePointOnline上のExcelを開き、編集、保存する方法について解説いたしました。