Ouvrir un fichier csv se trouvant en fichier ZIP

  • Initiateur de la discussion Initiateur de la discussion jucort
  • Date de début Date de début

jucort

XLDnaute Nouveau
Bonjour,

Je souhaiterais ouvrir un fichier csv zippé se trouvant sur un serveur interne de mon entreprise.
Pour le moment, j'ai écris le code VBA.

Sub télécharge011()
Dim strURL As String
strURL = "http://.............distrereplus/011_se102glissant.csv.gz"
Workbooks.Open Filename:=strURL

La macro va bien récupérer le fichier se trouvant sur le serveur, mais les données sont des caractères incompréhensibles.
Voici le fichier quand il est ouvert de manière manuelle ( et c'est les données là que je souhaite récupérer) --> Fichier OK.xlsx
Le Fichier KO.xlxs est le fichier que j'obtiens lorsque je lance la macro.

Savez-vous comment faire?
Merci d'avance pour votre aide
 

Pièces jointes

Pierrot93

XLDnaute Barbatruc
Re : Ouvrir un fichier csv se trouvant en fichier ZIP

Bonjour,

Pas ouvert tes fichers, mais un exemple ci-dessous, utilisant l'importation de données externes, le ficchier csv se trouvant dans un zip. A adapter à ton projet, en espérant que cela te fasse avancer :
Code:
Option Explicit
Sub test()
Dim z As Variant, f As Variant, sh As Worksheet
Dim a As Object, d As Variant, c As Variant

d = "C:\MesDocs\Excel\MonDossier\"
z = "NomFichier.zip"
f = "NomFichier.csv"
Set sh = ActiveSheet

c = d & z

If Dir(c) = "" Then MsgBox "Fichier " & z & " absent !!!" & vbLf & _
    "Fin de procédure...": Exit Sub

Set a = CreateObject("Shell.Application")
a.Namespace(d).CopyHere a.Namespace(c).items.Item(f)

With sh.QueryTables.Add(Connection:="TEXT;" & d & f, Destination:=sh.Range("A1"))
    .TextFilePlatform = xlWindows
    .TextFileStartRow = 1
    .TextFileParseType = xlDelimited
    .TextFileConsecutiveDelimiter = False
    .TextFileTabDelimiter = True
    .TextFileSemicolonDelimiter = True
    .TextFileCommaDelimiter = False
    .TextFileSpaceDelimiter = False
    .TextFileColumnDataTypes = Array(9, 9, 5, 9, 1)
    .TextFileDecimalSeparator = ","
    .Refresh BackgroundQuery:=False
    .Delete
End With

'pour supprimer le fichier csv décompressé, décommenter la ligne ci-dessous
'Kill d & f

End Sub

bonne journée
@+
 

jucort

XLDnaute Nouveau
Re : Ouvrir un fichier csv se trouvant en fichier ZIP

Merci pour ce retour.
Après avoir adapté le code à mon contexte, j'obtiens le même résultat.
A savoir des caractères comme ceux-ci :
‡¤I úÊž¢¿Ä`4*ÆÀKŸØÆkŠP0HOúzJ:½7-Fñ0[úíõ{ñDè‘Ž^¤cèá]ÄWßX—“Åì²¼2% ú÷ŸÌÕb6ãSÀ%(^+¡5*YßX*(ú¤ð_! m)\)°¶Xüš’X[æ‹72òè•’è?}"ÜÿïÓÝר×5`×tâ]РãϽþãíß_ÿoÓMRºÐá—›Ÿ”ÑÆ"môµ

--> donc pas exploitable.

Je tiens à précisier que le fichier ou se trouve le fichier .csv est un fichier en .GZ
 

Discussions similaires

Réponses
20
Affichages
3 K

Statistiques des forums

Discussions
315 284
Messages
2 118 014
Membres
113 406
dernier inscrit
NI-ZE