Find en bestemt fil automatisk via vba
HejJeg har hentet koden fra www.makeiteasy.dk og har rettet lidt i den.
Jeg skal finde en fil i en bestemt mappe.
Jeg kender mappen med kun en del af filnavnet.
Public Function FindFiler(strFilename As String, strDrive As String, Optional ReturnAll As Boolean = True) As String
Dim varItm As Variant
Dim strFiles As String
Dim strTmp As String
Dim strResult As String
If InStr(strFilename, ".") = 0 Then
MsgBox "Du skal angive hele filnavnet!", vbCritical, "Extension mangler!"
Exit Function
End If
'Hvis : mangler
If InStr(strDrive, ":") = 0 And Len(strDrive) = 1 Then
strDrive = strDrive & ":"
End If
With Application.FileSearch
.NewSearch
.LookIn = strDrive
.SearchSubFolders = True
.FileName = strFilename
.MatchTextExactly = False
.FileType = 2 'msoFileTypeAllFiles
If .Execute > 0 Then
For Each varItm In .FoundFiles
strTmp = ExtractFileName(varItm)
'If strFilename = strTmp Then
'If ReturnAll Then
'strResult = strResult & varItm & ";"
'Else
FindFiler = varItm
Exit Function
'End If
'End If
Next varItm
strResult = Left(strResult, Len(strResult) - 1)
FindFiler = strResult
End If
End With
End Function
Public Function ExtractFileName(strFullPath) As String
Dim intPos As Integer, intLen As Integer
intLen = Len(strFullPath)
If intLen Then
For intPos = intLen To 1 Step -1
'Find det sidste \
If Mid$(strFullPath, intPos, 1) = "\" Then
ExtractFileName = Mid$(strFullPath, intPos + 1)
Exit Function
End If
Next intPos
End If
End Function
Jeg kalder så funktionen vha:
strFilePath = FindFiler(sSoegBlad, sPath, False)
Hvor sSoegBlad fx. er *dei*.*
og sPath er den mappe hvor filen ligger i.
Problemet er at jeg ikke kan finde filen hvis det er en .zip fil. Men døber jeg filen om til fx. .txt kan den godt finde filen.
Hvorfor kan jeg ikke finde filen når det er en .zip fil?
/stobberup
