Creation d'un bouton de sauvegarde du classeur en cours au format zip

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

christ-94

XLDnaute Occasionnel
Bonjour

J'aimerais crée un bouton de sauvegarde du classeur en cours d'exécution, le format du nom du fichiers doit être de la forme "année" "mois" "jours" et au format Zip, sauvegarde dans le répertoire c:\excel

Je suis passe avec enregistre sous , le problème et la mise en forme inversion année et jours .
Puis la mise sous forme ZIP

Merci pour vos idées
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

Bonjour christ-94 le Forum,

Je joins un fichier qui enregistre le classeur actif dans un dossier excel1 sur C, à créer.
le fichier prend le nom de la date du jour sous la forme demandé
Ensuite le même fichier est compressé en fichier Zip dans le dit dossier.

Ps: J'ai adapté un code de Flo Gabon
Salut Yves
 

Pièces jointes

Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

salut chris-94

pour ajouter la date inversée à ton nom de fichier utilise le code suivant

pour sauvegarder en zip je ne sais pas faire
je suppose qu'il faut appeler un programme externe....


Sub datei()
nom = ActiveWorkbook.Name
nom1 = nom & Year(Date) & Month(Date) & Day(Date)
ActiveWorkbook.SaveAs nom1

End Sub
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

merci pour les solutions

je ne peux pas encore essayer le fichiers joint car je ne peux telecharge de piece sous forme excel le pare-feu de l'entreprise l'interdit

donc reponse lundi

Bon W.E
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

j'ai réussi a télécharge le fichier

le problème, il crée bien un zip dans le bon répertoire mais intègre l'ensemble des fichiers avec lui .essais dans le répertoire c:\temp

De plus il change le nom du fichiers source "Le nom du fichiers source ne doit pas chargé , car ce classeur excel est partage sur le réseau avec raccourci sur des postes déportes" peut on intègre au début de la macro une constante qui garde le chemin et le mon du fichiers , pour lui réaffecté après la sauvegarde


pour le code
Code:
Code:
Sub datei()
nom = ActiveWorkbook.Name
nom1 = nom & Year(Date) & Month(Date) & Day(Date)
ActiveWorkbook.SaveAs nom1
il sauve bien avec année et mois plus jour le problème il sauve sous la forme 200691 et devrais sauve sous 20060901


merci a vous pour la réponse au début de nom problème
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

Bonjour christ-94,Denis et le Forum,

Pas sur d'avoir tous compris je te joins une autre version qui fait une copie de ton fichier source et l'enregistre en zip dans le dossier C\excel1, le fichier source ne change pas.
Pour la date il enregistre sous cette forme 20060902
@+
Yves
 

Pièces jointes

Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

Bonjour et bonne semaine a tous


Le fichier fonctionne nickel
Seul probleme il enregistre l'ensemble des fichiers ce trouvent dans le repertoire de sauvegarde


Exemple
S'il y a 10 fichiers de sauvegarde dans le repertoire excel1 , il intergre tous les fichiers dans le zip donc 10 plus le fichiers avec le bonne date

Merci de votre aide
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

Re-bonjour

Apres, plusieurs essais la macro fonctionne bien si je sauvegarde sur le lecteur C:
, mais pas sur un disque reseau quelqu'un a t il une solution ?




Code:
Public Const CheminWinZip = "C:\Program Files\WinZip\" 'Répertoire ou est installé Winzip

Sub Zipperfichier()
Dim a As String
'permet de choisir le fichier à zipper et le dossier de destination de l'archive
Dim FichAZipper As String 'attention, pas d'espace dans le nom
FichAZipper = Format(Date, "yyyyMMdd")
'ChDir "c:\temp\excel1" 'Indiquez le répertoire
ChDir "Q:\DIRIM\EXMA" 'Indiquez le répertoire
ThisWorkbook.SaveCopyAs Filename:=(FichAZipper & ".xls")
NomArchive = (FichAZipper & ".xls")
Shell (CheminWinZip & "winzip32.exe -M " & FichAZipper & " " & NomArchive)
End Sub
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

Bonjour christ-94 le Forum,
Moi personnellement suis pas doué pour travailler des fichiers en réseau, aussi je dois donc passer la main, j'espère que tu trouveras la solution à ton problème .
Salut Yves
 
Re : Creation d'un bouton de sauvegarde du classeur en cours au format zip

bonjour

Pour info la solution au probleme

Public Const CheminWinZip = "C:\Program Files\WinZip\" 'Répertoire ou est installé Winzip


Sub Zipper1fichier()
'permet de choisir le fichier à zipper et le dossier de destination de l'archive
Dim DossDest As String
Dim I As Integer
Dim a As String 'permet de choisir le fichier à zipper et le dossier de destination de l'archive
Dim FichAZipper As String 'attention, pas d'espace dans le nom
FichAZipper = Format(Date, "yyyyMMdd")

Sheets("Protege").Select
b = Range("D2") ' Indiquez le répertoire
ChDir b
ThisWorkbook.SaveCopyAs Filename:=(FichAZipper & ".xls")
FichAZipper = (FichAZipper & ".xls")

DossDest = Range("D2")

Sheets("Presentation").Select

For I = Len(FichAZipper) To 1 Step -1
If Mid$(FichAZipper, I, 1) = "\" Then Exit For
Next
NomArchive = DossDest & "\" & Left(Mid$(FichAZipper, I + 1), Len(Mid$(FichAZipper, I + 1)) - 4)
MsgBox (NomArchive)

Shell (CheminWinZip & "winzip32.exe -a " & NomArchive & " " & FichAZipper)

End Sub


Merci pour les reponses
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour