これ、プログラミングをしていて迷うので、案外便利だと思います。
かなり無理矢理感がありますが、なんとか
フォルダパス
ファイルパス
ファイル名
を取り出しています。
ここで活躍するのが文字列関数 。
ようやく、具体的な使い方を紹介できました。
もう少し別の書き方があるのかな?
慣例的な取得方法がありそうな気もしますが、
ちょっとクイズみたいに思って勝手に作ってしまいました。
どうなるか?
①このようなファイル選択ダイアログが表示されます。
②選んだファイルの
・フォルダパス
・ファイルパス
・ファイル名
がメッセージボックスに表示されます。
プログラム
Sub FilePath_FolderPath() '簡易版 Dim fd As FileDialog Dim myFileName As String Dim myFolderPath As String Dim myFilePath As String On Error GoTo EH Set fd = Application.FileDialog(msoFileDialogOpen) With fd .Title = "ファイルを1つ選んでください。" .AllowMultiSelect = False If .Show = -1 Then myFilePath = .SelectedItems(1) myFileName = Right(myFilePath, Len(myFilePath) - InStrRev(myFilePath, "\")) myFolderPath = Left(myFilePath, Len(myFilePath) - Len(myFileName) - 1) MsgBox "フォルダパス:" & myFolderPath & vbCr & _ "ファイルパス:" & myFilePath & vbCr & _ "ファイル名:" & myFileName End If End With Set fd = Nothing On Error GoTo 0 Exit Sub EH: MsgBox Err.Description End Sub