' /* Code Taken From: http://forums.devx.com/showthread.php?t=148627 */ Public Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long Public Type OPENFILENAME lStructSize As Long hwndOwner As Long hInstance As Long lpstrFilter As String lpstrCustomFilter As String nMaxCustFilter As Long nFilterIndex As Long lpstrFile As String nMaxFile As Long lpstrFileTitle As String nMaxFileTitle As Long lpstrInitialDir As String lpstrTitle As String flags As Long nFileOffset As Integer nFileExtension As Integer lpstrDefExt As String lCustData As Long lpfnHook As Long lpTemplateName As String End Type Public Function SelectFileOpenDialog() Dim strTemp, strTemp1, pathStr As String Dim i, n, j As Long Dim OpenFile As OPENFILENAME Dim lReturn As Long Dim sFilter As String Dim Fname As String OpenFile.lStructSize = Len(OpenFile) sFilter = "Text Files (*.txt)" & Chr(0) & "*.TXT" & Chr(0) OpenFile.lpstrFilter = sFilter OpenFile.nFilterIndex = 1 OpenFile.lpstrFile = String(257, 0) OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1 OpenFile.lpstrFileTitle = OpenFile.lpstrFile OpenFile.nMaxFileTitle = OpenFile.nMaxFile OpenFile.lpstrInitialDir = "C:\" OpenFile.lpstrTitle = "Select File" OpenFile.flags = 0 lReturn = GetOpenFileName(OpenFile) If lReturn = 0 Then MsgBox "Nessun file selezionato", vbCritical, "Errore" SelectFileOpenDialog = "" Else 'MsgBox "The user Chose " & Trim(OpenFile.lpstrFile) SelectFileOpenDialog = Trim$(OpenFile.lpstrFileTitle) ' copy the filename to "Fname" n = FileLen(OpenFile.lpstrFile) 'length of the file End If End Function