Module: FileDialog in Category Windows : Common Dialogs from Total Visual SourceBook

Displaying the File Open/Save Common Dialog in VB6 and VBA with 32 and 64-bit Windows API calls.

A set of pre-defined File Masks are included to simplify the selection of file types. For VBA, you can use the modFileDialogVBA which avoids the use of Windows API calls.

Procedure Name Type Description
(Declarations) Declarations Declarations and private variables for the modFileDialog module.
FileDialog_GetFile Procedure Launch the file open dialog and return selected file name.
FileDialog_GetFiles Procedure Launch file open dialog and allow selecting one or more file names.
OpenDialog Procedure Invoke the Windows API to launch the file open dialog and return the file name selected by the user.
SetFileMasks Procedure Combine multiple file masks into one.
SetFileMask Procedure Set file mask based on specified options.
' Example of modFileDialog
' To use this example, create a new module and paste this code into it.
' Then run the procedure by putting the cursor in the procedure and pressing:
'    F5 to run it, or
'    F8 to step through it line-by-line (see the Debug menu for more options)

Private Sub Example_modFileDialog()
  ' Comments: Examples of using the modFileDialog module to invoke the Windows API Common Control for selecting a file or files from the File Dialog.
  '           Support VB6 and VBA with 32 and 64 bit Windows API calls.

  Const cstrDefaultFile As String = "C:\Total Visual SourceBook 2013\Samples\example.txt"
  Dim strFile As String
  Dim strFiles As String
  Dim astrFiles() As String

  ' Use the FileDialog_GetFile method to Display the file open dialog and retrieve the file name
  ' This method accepts parameters rather than requiring the class properties to be set.
  strFile = FileDialog_GetFile(True, cstrDefaultFile, "Total Visual SourceBook Example of File Open", "txt")
  If strFile <> "" Then
    MsgBox "You chose this file: " & strFile
    MsgBox "You cancelled the File Open dialog"
  End If

  ' Select multiple files by using Shift+Click or Ctrl+Click when the dialog is open
  If FileDialog_GetFiles(cstrDefaultFile, "Total Visual SourceBook Example of File Open for Multiple Files", "All", astrFiles()) Then
    strFiles = Join(astrFiles, vbCrLf)
    MsgBox "These files were selected: " & strFiles
  End If

  ' Show the Save Dialog for Access databases
  strFile = FileDialog_GetFile(False, cstrDefaultFile, "Total Visual SourceBook Example of File Save", "Access")
  If strFile <> "" Then
    MsgBox "File Name: " & strFile
    MsgBox "You cancelled the File Save dialog"
  End If

End Sub

Total Visual SourceBook The source code in Total Visual Sourcebook includes modules and classes for Microsoft Access, Visual Basic 6 (VB6), and Visual Basic for Applications (VBA) developers. Easily add this professionally written, tested, and documented royalty-free code into your applications to simplify your application development efforts.

Total Visual SourceBook is written for the needs of a developer using a source code library covering the many challenges you face. Countless developers over the years have told us they learned some or much of their development skills and tricks from our code. You can too!

Additional Resources

Total Visual SourceBook CD and Printed Manual

Microsoft Access/ Office 2016, 2013, 2010, and 2007 Version
is Shipping!

New features in Total Visual SourceBook for Access, Office and VB6

Supports Access/Office 2016, 2013, 2010 and 2007, and Visual Basic 6.0!

View all FMS products for Microsoft Access All Our Microsoft Access Products


Reader Choice Award for MS Access Source Code Library
Reader Choice

"The code is exactly how I would like to write code and the algorithms used are very efficient and well-documented."

Van T. Dinh, Microsoft MVP

SourceBook Info

Additional Info




Free Product Catalog from FMS