VBA Environ関数でOneDriveのローカルパスを取得する

Tech

自分のPCでFileSystemObjectを使うと、OneDriveが原因でファイルパスが「https://~」となってマクロが動かない。OneDriveのローカルパスを取得し置換すればよさそうなので、ここでは、VBAでローカルパスを取得する方法をメモ

置換は、別途考えよう。

環境変数の確認

Get-ChildItem env: を使うと、OneDrive もしくは OneDriveConsumer でローカルパスが設定されていることがわかる

VBAのEnviron関数でOneDriveのローカルパスを取得

Environ関数は、オペレーティング システムの環境変数に関連付けられた String を返してくれる。

今回の場合、OneDrive もしくは OneDriveConsumer を指定すると取得できそう。

以下、簡単なサンプルコード

実行すると、イミディエイトウィンドウに以下が出力され、ローカルパスを取得できる

Environ 関数 (Visual Basic for Applications) | Microsoft Learn

コメント

タイトルとURLをコピーしました