OneDriveのhttp形式のパスをローカル上のパスに変換
- yuji fukami
- 2024年1月14日
- 読了時間: 2分
更新日:9月23日
<概要>
今回は、OneDriveのhttp形式のパスをローカル上のパスに変換する汎用プロシージャを紹介します。
OneDriveを起動中だとThisWorkbook.Path(ThisWorkbookが保存されているフォルダのフルパス)の値がhttp形式になってしまうのですが、これをDir関数やFileSystemObjectで認識できるようなローカルパスに変換する処理です。
この対策がないVBAコードだと、マクロ付ブックを使用するたびにOneDriveを終了させておく必要があるため作業において非常に手間が生じてしまいます。紹介する汎用プロシージャによってそのような手間を回避することができます。
ただ、紹介する汎用プロシージャはOneDriveの契約形式などで通用しないため完璧な方法ではありません。これに関しては現在調査中です。
<用途>
OneDriveが実行中だとhttp形式になってしまったThisWorkbook.PathをVBAで認識できるローカルパスに変換する
<プロシージャ紹介>
Public Function ConvOneDrivePath_LocalPath(Path As String) As String
名前: ConvOneDrivePath_LocalPath /Functionプロシージャ
説明: OneDriveのhttp形式のパスをローカル上のパスに変換する
'引数
'Path・・・変換対象のフォルダパス
<実行例>
次のようなコードを用意します。
実行するとイミディエイトウィンドウに次のような結果が表示されます。
機密情報に当たるところはぼかしてありますが、結果http形式のパスがローカルパスに変換されています。




コメント