XL 2021 Transformer fichier zip en xlsm

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
Bonjour à tous,
Suite à ma demande précédente, comment transformer mon fichier zip en xlsm
En vous remerçiant.

VB:
    Dim Source, Destination, MyHex, MyBinary
    Dim oShell, oApp, oFolder, oCTF, oFile
    Dim oFileSys
    
    'Spécifiez le répertoire
    Source = "D:\Users\Nicolas\Desktop\TestZip"
    Destination = "D:\Users\Nicolas\Desktop\maSauvegarde.zip"
    
    MyHex = _
    Array(80, 75, 5, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
    
    For i = 0 To UBound(MyHex)
        MyBinary = MyBinary & Chr(MyHex(i))
    Next
    
    Set oShell = CreateObject("WScript.Shell")
    Set oFileSys = CreateObject("Scripting.FileSystemObject")
    
    'Création de la base du fichier zip.
    Set oCTF = oFileSys.CreateTextFile(Destination, True)
    oCTF.Write MyBinary
    oCTF.Close
    Set oCTF = Nothing
    
    Set oApp = CreateObject("Shell.Application")
    
    Set oFolder = oApp.Namespace(Source)
    If Not oFolder Is Nothing Then _
        oApp.Namespace(Destination).CopyHere oFolder.Items
    
    Set oFile = Nothing
    On Error Resume Next
    
    Do While (oFile Is Nothing)
        'Attention: provoque une erreur 70 si un des fichiers à zipper
        'est toujours ouvert.
        Set oFile = oFileSys.OpenTextFile(Destination, ForAppending, False)
        
        If Err.Number <> 0 Then
            Err.Clear
        End If
    Loop

Merci
Nicolas
 

patricktoulon

XLDnaute Barbatruc
la solution que j'ai donné fonctionne sur 2007 , 2013 , 2016 , 2021

alors la solution de @jurassic porck fonctionne mais pas sur 2007 visiblement

en tout état de cause tu a eu plusieurs solutions et piste mais me semble til que c'est pas tout a fait ce que tu cherche on en revient donc toujours avec toi au même problème
réfléchi ton projet avant de poser des questions qui ne vont pas dans le sens de ton projet
je te cite
En fin de compte, avant que j'ailles plus loin, mon idée ne fonctionne pas du tout, même encore moins,
parce que là le fichier xlsm (modifié) ne s'ouvre même pas.
si tu nous en avais dit un peu plus on aurait pu t'aiguiller
la version que je t'ai donné crée une archive zip compatible avec un xlsm
la version que t'avais donné kiki29 ne l'ai plus
 

Nicolas JACQUIN

XLDnaute Impliqué
Supporter XLD
Re,
Merci pour ta démo, j'avais pas du tout compris le principe, que ça zip et mette en xlsm.
Du coup j'ai modifié comme toi mais voilà ce que j'ai quand j'ouvre un fichier protégé (vba)

Capture d’écran 2024-06-29 193503.jpg

et en plus ma méthode ne marche pas
 

patricktoulon

XLDnaute Barbatruc
re
ben c'est un peu normal à vrai dire ;)
craker le vbproject dynamiquement c'est presque impossible (je te l'ai dit au moins 10 fois déjà)
et je dis vraiment craker je parle pas de ton hook bipass
tu a basé tout ton projet sur ce point alors que tu ne sais même pas comment on fait vraiment
comment veux tu obtenir un résultat cohérent avec l'intention avec ce manque de connaissance ?
 

Statistiques des forums

Discussions
315 093
Messages
2 116 139
Membres
112 669
dernier inscrit
Guigui2502