- ベストアンサー
Excel VBAで参照ファイルのパス名を取得する方法
- Excel VBAを使用して、参照ファイルのパス名を取得する方法について教えてください。
- EXSEL2003のユーザフォームにテキストボックスと参照ボタンを配置し、参照ボタンを押すとファイルを開いてパス名を取得したいです。
- 現在のコードではファイルを参照することはできますが、パス名を取得することができません。どのように記述すれば良いでしょうか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
自分のやり方でやりたいのかもしれないが、何をしたいのか良くわからない。 .GetOpenFilenameならどのパスのどのファイルか、わかっている時に使うもので、プログラムで開くときパスも判っているはず。 ーー 選択したファイルのパス名を知りたいなら エクセルのファイルに限るなら Sub test03() 'With Application.FileDialog(msoFileDialogFolderPicker) With Application.FileDialog(msoFileDialogFilePicker) '初期フォルダ設定 .InitialFileName = "C:\DATA\" 'ダイアログのタイトル .Title = "ファイルを選択してください" If .Show = True Then MsgBox .SelectedItems(1) f = .SelectedItems(1) If Right(f, 4) = ".xls" Then r = InStrRev(f, "\") MsgBox Left(f, r - 1) 'パス名 MsgBox Right(f, Len(f) - r) 'ブック名 Else MsgBox "エクセルを選択のこと" End If End If End With End Sub のようなのもありかな。 しかしこういうニーズは現実的かな。 外にも色いろなやり方がある個所のようなのでWEBで調べまくること。
その他の回答 (2)
- keithin
- ベストアンサー率66% (5278/7941)
ご質問を読み違えましたかね。 「ファイルを指定する」のもハズせないのでしたら Dim OpenFileName As String OpenFileName = Application.GetOpenFilename("*.uws,*.uws?") If OpenFileName = "False" Then Exit Sub MsgBox Left(OpenFileName, InStrRev(OpenFileName, "\") - 1) とか。 失礼しました。
- keithin
- ベストアンサー率66% (5278/7941)
たとえば「excel vba フォルダを選択」をキーワードにして,ちょっとぐぐってみましょう。 見つかります: http://officetanaka.net/excel/vba/tips/tips39.htm
お礼
ありがとうございました。 教えていただいたのを少し変えて使わせていただきます。
補足
回答ありがとうございます。 すみません質問が適当でなかったようです 単純に選択したファイルのパス名を知りたいのです。 よろしくお願いします。