You need to use the cdlOFNAllowMultiSelect flag. The help file states that the filenames are separated with spaces which is not correct when you use the Explorer style. Instead the filenames are separated with NULL characters. The first part only contains the path and the rest are the different filenames selected.
Cheers,VB Code:
Private Sub Command1_Click() Dim strFile() As String, strPath As String Dim n As Long, nCount As Long On Error Resume Next With CommonDialog1 .Flags = cdlOFNAllowMultiselect + cdlOFNExplorer .CancelError = True .InitDir = "C:\" .DialogTitle = "Select File" .ShowOpen If Err.Number <> cdlCancel Then strFile = Split(.FileName, vbNullChar) nCount = UBound(strFile) If nCount = 0 Then 'Only one file is selected so split up the path and the filename ReDim strFile(1) strFile(0) = Left$(.FileName, InStrRev(.FileName, "\")) strFile(1) = Mid$(.FileName, InStrRev(.FileName, "\") + 1) nCount = 1 End If strPath = strFile(0) If Right$(strPath, 1) <> "\" Then strPath = strPath & "\" End If For n = 1 To nCount If Len(Dir(FAVORITES_FOLDER & strFile(n))) = 0 Then FileCopy strPath & strFile(n), FAVORITES_FOLDER & strFile(n) End If Next End If End With End Sub




Reply With Quote