Bonjour,
ça y'est, j'ai ma fonction et toutes mes bibliothèques, par contre j'ai un problème que ne ne comprend pas.
Lors de l'execution de cette ligne
.LookIn = cheminFichier()
Si je donne le chemin exact du dossier sur lequel je dois effectuer la recherche, j'ai une erreur. En revanche, si je remonte dans le dossier parent, cela fonctionne parfaitement. Dans le cas présent, ce n'est pas très dérangeant mais j'aimerai comprendre....
J'ai juste modifié un peu la fonction pour qu'elle me donne le nom du fichier en valeur de retour, voici ce qu'elle est devenue :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
| Function Xls_FindLastFile_And_Copy() As String
Dim NameLastFile As String
Dim DateLastFile As Date
Dim DateTemp As Date
Dim NomFichierText As String
Dim InfoFile As New FileSystemObject
Dim i As Long
Dim StrCheminDeRecherche As String
' recherche du dernier fichier xls créé
With Application.FileSearch
.NewSearch
.LookIn = cheminFichier()
.Filename = "*.xls"
.SearchSubFolders = True
If .Execute() > 0 Then
For i = 1 To .FoundFiles.Count
DateTemp = InfoFile.GetFile(.FoundFiles(i)).DateCreated
If DateLastFile < DateTemp Then
NameLastFile = .FoundFiles(i)
DateLastFile = DateTemp
End If
Next i
Else
'Message d'erreur
MsgBox "Erreur de recherche"
End If
End With
'MsgBox "Dernier fichier : " + NameLastFile
Xls_FindLastFile_And_Copy = NameLastFile
Set InfoFile = Nothing
End Function |
Partager