VBAでIE操作に役立つ1階層上の親ディレクトリパス取得「ParentDirName」

VBAのIE(InternetExplorer)制御に便利なサブルーチンを紹介しています。

「ParentDirNameサブルーチン」の詳しい説明は以下よりご確認ください。
1階層上の親ディレクトリパスを取得「ParentDirName」の解説
Function ParentDirName() As String

 With ThisWorkbook
  ParentDirName = Left(.Path, InStrRev(.Path, "\") - 1)
 End With

End Function
With ThisWorkbook
(省略)
End With

こちらでは、「Withステートメント」を利用してコードの省略化を行っています。同じオブジェクトを何度も記述する場合に非常に便利ですので、是非活用しましょう。

ParentDirName = Left(.Path, InStrRev(.Path, "\") - 1)

こちらでは1行で、親ディレクトリパスの取得を行っています。
「InStrRev」関数は、指定した文字列の中から指定したキーワードを後方から検索して見つかった位置を返します。
今回は、カレントディレクトリの文字列の中から「\」キーワードを後方から検索して位置を取得しています。

例えば以下がカレントディレクトのパス名だった場合は、「InStrRev(.Path, "\")」では、「24」を返します。

C:\Users\vba-ie\Desktop\sample

「\」の位置を取得したら、次は「LEFT」関数を利用して、親ディレクトリまでのパスを取得します。