liste de fichier dans un .zip

X

xavier

Guest
Bonjour,


Je cherche le moyen de connaitre la liste des fichiers fichiers contenu
dans un fichier zip cela est-il possible a partir de VBA?????

Je vous remercie d'avoir pris connaissance de ce message.
 
M

michel

Guest
bonjour Xaxier

j'espere que cette adaptation pourra t'aider


la source VB :
source http://www.vbfrance.com/code.aspx?id=17052


Sub listerFichiersContenusDansZip()
ZIPBrowse "C:\Documents and Settings\michelxld\dossier\general\mesFichiers.zip" 'adapter le chemin
End Sub

Private Sub ZIPBrowse(ByVal vFileName As String)
'source http://www.vbfrance.com/code.aspx?id=17052
'Auteur : EBArtSoft@
'%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
Dim Found As Boolean
Dim FileNum As Integer
Dim Name As String
Dim Temp As Long, i As Long, j As Long, f As Long

f = FreeFile
Open vFileName For Input As #f: Close #f
Open vFileName For Binary Access Read Lock Write As #f
Get #f, , Temp

If Temp = &H4034B50 Then 'si la signature est un zip (PK)
For i = LOF(1) - 20 To 1 Step -1 'parcour le dossier

Get #f, i, Temp 'recupere un mot long

If Temp = &H6054B50 Then 'si la signature correspond
Get #f, i + 10, FileNum 'recupere le nombre de fichier
Found = True
Exit For
End If

Next
End If

If Found Then
'crée une nouvelle collection
For j = 1 To FileNum 'parcourt tous les fichiers
i = i - 36 'initialise le pointer
For i = i To 1 Step -1 'parcourt le dossier
Get #f, i, Temp 'recupere un mot long

If Temp = &H2014B50 Then 'si la signature correspond
Get #f, i + 28, Temp 'recupere la longueur du nom de fichier
Name = Space(Temp) 'crée un buffer
Get #f, i + 46, Name 'recupere le nom de fichier
'ajoute dans la collection
MsgBox Name
Exit For

End If
Next
Next
End If
'ferme le fichier
Close #f
End Sub



bonne fin d'apres midi
MichelXld
 

Discussions similaires

Réponses
6
Affichages
320

Statistiques des forums

Discussions
312 205
Messages
2 086 199
Membres
103 156
dernier inscrit
Ludo94130