VBA~ファイル選択ダイアログボックスからパスを取得しよう~Excel
VBAでファイル選択ダイアログボックスからユーザーが指定したファイルのフルパスを取得する方法を解説します。
Application.GetOpenFilenameメソッドを使うとダイアログボックスを表示しユーザーがファイルを選び、そのファイルのフルパス(ファイル名を含んだパス)を取得できます。
下のコードはmyfilename = Application.GetOpenFilenameを実行すると[ファイルを開く]ダイアログボックスが表示されます。ここでキャンセルを押すと"FALSE"を返すのでmyfilenameという変数に"FALSE"が格納されIf文の条件式myfilename = "False"を満たすのでExit Subを実行しコードを終了します。ダイアログボックスでユーザーがファイルを選択し開くをクリックすると、その時点では開かずmyfilenameという変数に選択したファイルのフルパスが格納されます。myfilenameにフルパスが格納されているのでIf文の条件式myfilename = "False"を満たさないのでIfとEnd Ifの間に書かれたコードは実行しないのでExit Subは実行せずに最後に書かれているWorkbooks.Open (myfilename)を実行し、ここで選択したファイルが開きます。
Sub test1() Dim myfilename As String myfilename = Application.GetOpenFilename If myfilename = "False" Then Exit Sub End If Workbooks.Open (myfilename) End Sub