Zipper des fichiers
Résolu
chithien
-
chithien -
chithien -
Bonjour,
Je cherche à savoir comment zipper en vba des fichiers se trouvant sur un répertoire dont le nom comporte une ou plusieurs espaces.
Pour zipper des fichiers, j'utilise cette ligne de code : Shell(CheminWinZip & "winzip32.exe -a " & nomZip & " " & fich) qui permet de zipper des fichiers avec WinZip.
Le problème se produit lorsque je veux zipper des fichiers se trouvant sur un répertoire conportant des espaces (ex : C:\Test\Répertoire Archive). En effet, la macro interprète comme si on voulait zipper des fichiers se trouvant sur le répertoire "C:\Test\Répertoire" et non "C:\Test\Répertoire Archive" !
Est-ce que quelqu'un sait comment peut-on faire pour que la macro prenne aussi en compte l'espace ?
Merci de votre aide.
Je cherche à savoir comment zipper en vba des fichiers se trouvant sur un répertoire dont le nom comporte une ou plusieurs espaces.
Pour zipper des fichiers, j'utilise cette ligne de code : Shell(CheminWinZip & "winzip32.exe -a " & nomZip & " " & fich) qui permet de zipper des fichiers avec WinZip.
Le problème se produit lorsque je veux zipper des fichiers se trouvant sur un répertoire conportant des espaces (ex : C:\Test\Répertoire Archive). En effet, la macro interprète comme si on voulait zipper des fichiers se trouvant sur le répertoire "C:\Test\Répertoire" et non "C:\Test\Répertoire Archive" !
Est-ce que quelqu'un sait comment peut-on faire pour que la macro prenne aussi en compte l'espace ?
Merci de votre aide.
A voir également:
- Zipper des fichiers
- Renommer des fichiers en masse - Guide
- Fichiers epub - Guide
- Wetransfer gratuit fichiers lourd - Guide
- Explorateur de fichiers - Guide
- Fichiers bin - Guide
Voici un petit programme qui permet de convertir des chemins windows en dos :
Private Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal lBuffer As Long) As Long
Public Function DosPath(strFile As String) As String
Dim lng As Long, Path As String 'Données nécessaires
Path = String$(165, 0) 'Crée un buffer
lng = GetShortPathName(strFile, Path, 164) 'Prend le chemin en Dos
DosPath = Left$(Path, lng) 'Enlève tout les chr$(0) de trop
End Function