📊つかえる関数.com

ThisWorkbook.PathがURL(https://...)を返すようになった?

VBA・マクロ上級·更新: 2025-01-15
Excel 2021およびMicrosoft 365では、OneDriveやSharePointの同期フォルダからファイルを開いた場合、ThisWorkbook.Pathがローカルパスではなくクラウドストレージ側のURLパスを返す仕様に変更されました。ローカルパスを前提にしたVBAコード("\"で分割する処理等)は修正が必要です。

📊 バージョン対応

2016
ローカルパス
2019
ローカルパス
2021
URL
365
URL

📋 実務での使用例

💼 ファイルパスを取得するVBAコードの修正

OneDriveに保存したブックで ThisWorkbook.Path を使うと "https://..." が返る。ローカルパスを取得するには Environ("OneDrive") を使う必要がある

If InStr(ThisWorkbook.Path, "https://") > 0 Then localPath = Environ("OneDrive") & ... End If
VBAThisWorkbook.PathOneDriveSharePointURL