I think you want to open the filedialog window, where you can select a file.
This subroutine will put the path and file selected in a textbox called
txtpath. Note that you can add Filters with file extensions(see code).
Call this sub with the doubleclick event of your textbox:
FDMain (1)
here is the sub:
***************
Public Sub FDMain(FF As Integer)
'Declare a variable as a FileDialog object.
Dim fd As Office.FileDialog
Me.txtPath = ""
'Create a FileDialog object as a File Picker dialog box.
If FF = 1 Then
Set fd = Application.FileDialog(msoFileDialogFilePicker)
Else
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
End If
'Declare a variable to contain the path
'of each selected item. Even though the path is a String,
'the variable must be a Variant because For Each...Next
'routines only work with Variants and Objects.
Dim vrtSelectedItem As Variant
'Use a With...End With block to reference the FileDialog object.
With fd
'Use the Show method to display the File Picker dialog box and
return the
' Prevent user from making multiple selections in dialog box
.AllowMultiSelect = False
' Set the title of the dialog box.
.Title = "Please select one or more files"
' Clear out the current filters, and add our own.
.Filters.Clear
.Filters.Add "Access Databases", "*.MDB", "*.DOC", "*.BMP" ' add file
extensions...
'User 's action.
'The user pressed the action button.
If .Show = -1 Then
'Step through each string in the FileDialogSelectedItems
collection.
For Each vrtSelectedItem In .SelectedItems
'vrtSelectedItem is a String that contains the path of each
selected item
'You can use any file I/O functions that you want to work
with this path
'This example simply displays the path in a message box.
If FF = 1 Then
Me.txtPath = vrtSelectedItem
Else
Me.txtPath = vrtSelectedItem + "\"
End If
Next vrtSelectedItem
'The user pressed Cancel.
Else
End If
End With
'Set the object variable to Nothing.
Set fd = Nothing
End Sub