spootnic22
Messages postés84Date d'inscriptionmardi 31 octobre 2006StatutMembreDernière intervention30 janvier 2010
-
14 nov. 2006 à 10:43
spootnic22
Messages postés84Date d'inscriptionmardi 31 octobre 2006StatutMembreDernière intervention30 janvier 2010
-
14 nov. 2006 à 16:39
Salut,
J'ai un dossier qui contient par exemple 6 fichiers :file1.html ,file2.html, file3.html, file4.html,file5.html,file6.html
Comment je peux récuperer le nom du drenier fichier "file6.html"
Merci.
lRet = GetFilesPathFromDirectory(App.Path, aResultat(),
"file*.html")
If lRet <> -1 Then MsgBox aResultat(lRet)
End Sub
Function GetFilesPathFromDirectory(ByVal sDir As String, ByRef aRet() As String, Optional ByVal sFilter As String = "*.txt") As Long
'
GetFilesPathFromDirectory retourne -1 si aucun fichier trouvé
' sinon retourne la dimension du tableau, donc NB fichiers -1
(tableau commence à l'indice 0)
' init les
résultats
GetFilesPathFromDirectory = -1
Erase aRet
If RightB$(sDir, 2) <> "" Then sDir = sDir & ""
' formate le
chemin
Dim sFile As String, lIndex As Long
sFile = Dir(sDir & sFilter, vbHidden Or
vbSystem)
'
redimentionne après vérif premier fichier
If sFile <> vbNullString Then
lIndex = 0
ReDim aRet(lIndex)
aRet(lIndex) = sDir & sFile
sFile = Dir
' boucle sur tous les fichiers
Do While sFile <> vbNullString
lIndex = UBound(aRet) + 1
ReDim Preserve aRet(lIndex)
aRet(lIndex) = sDir & sFile
sFile = Dir
Loop
'
retour
GetFilesPathFromDirectory = lIndex
End If
End Function
jmfmarques
Messages postés7666Date d'inscriptionsamedi 5 novembre 2005StatutMembreDernière intervention22 août 201427 14 nov. 2006 à 11:00
Utilise dir avec "file*.html" , dans une boucle , et mid (nom_du_fichier_trouvé, 5, len(nom_du_fichier_trouvé)- 9) pour extraire le n° et ne garde le n° que s'il est supérieur au précédent.
PS : je te précise que dans l'expression plus haut, 9 = longueur de ".html" + longueur de "file",