VBA Code to Browse a File

Excel VBA Tricks

There are few VBA codes which are commonly used by every developer. One of them is giving an option to user to browse a file. Below is a sample code where I have given a browse button (shape) in an Excel sheet. User can click on this button/shape and select an Excel file. The browsed file path is then displayed in cell E2:

VBA code to browse a file

Public Sub BrowseAFile()
    Dim objFileDialog As Object
    Dim objSelectedFile As Variant
    'Browse the file
    Set objFileDialog = Application.FileDialog(3)
    With objFileDialog
        .ButtonName = "Select"
        .AllowMultiSelect = False
        .Filters.Clear 'It is important to clear old filters before adding new one
        .Filters.Add "Excel File", "*.xls;*.xlsx;*.xlsm", 1   'You may add more filters and give them a sequence
        .Title = "Select Input file"
        .Show
        For Each objSelectedFile In .SelectedItems
            Range("E2").Value = objSelectedFile 'You may change the destination as per your requirement
        Next
    End With
End Sub

Below is the description of the available options in the code to customize the code for your requirement

FileDialog Options

ButtonName: Name of the select button, I have used ‘Select’ in the code
AllowMultiSelect: To allow user to select one or multiple files, I have allowed only one input file in the code
Filters: To show only specific type of files to user for selection (Example: .Filters.Add “Word File”, “*.doc;*.docx”, 1 to select a word file)

It is worth to mention that if you want to allow user to select multiple files then you need to make few changes in the code else it will overwrite the path mentioned in cell E2 instead of creating a list

To use this code in your Excel file, follow below steps:

  1. Open the Excel file where you want to count the color cells
  2. Press Alt+F11
  3. Insert a Module (Insert>Module) from menu bar
  4. Paste the code in the module
  5. Now add a shape in Excel sheet
  6. Give a name to the shape like ‘Browse a file’
    Shape
  7. Right click on the shape and select ‘Assign Macro…’
    Assign Macro
  8. Select BrowseAFile from the list and click on ‘Ok’ button
    Assign Macro Dialog
  9. Done

Leave a Reply

Your email address will not be published. Required fields are marked *