Sauvegarde automatique tous les classeurs ouverts

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

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 !

stephblit

XLDnaute Nouveau
Bsr,

Voila, j'ai une cinquantaine de classeurs ouverts qui ne sont pas enregistrés

Je souhaite créer une macro
qui me permette d'enregistrer automatiquement ces 50 classeurs dans le dossier (C:\Users\Alex\Desktop\Nouveau dossier) en leur donnant à le nom du 1er onglet (à vrai dire chaque classeur ne comporte qu'un seul onglet !)

Pouvez-vous m'aider ?

par avance MERCI
 
Re : Sauvegarde automatique tous les classeurs ouverts

Bonsoir,

Evite d'utiliser DESKTOP (qui est ton bureau ici) pour sauver des fichiers.

Prends plutôt C:\Users\Alex\Nouveau ou C:\sauvegarde.

Tu laisseras de la place à ton profil utilisateur.

Amicalement

Dan
 
Re : Sauvegarde automatique tous les classeurs ouverts

bsr,
et merci bcp pour votre aide

Concernant le ''nouveau dossier'', il est déjà crée !
C'est en fait juste le nom du dossier où doive se retrouver tous mes classeurs excel sauvegardés

en esperant avoir été clair...
 
Re : Sauvegarde automatique tous les classeurs ouverts

bonsoir

Code:
Public Sub SaveTousClasseursOpen()
Application.DisplayAlerts = False
For C = 1 To Workbooks.Count
  N$ = Workbooks(C).Name
  NomDuClasseurSVG$ = "C:\Users\Alex\Desktop\Nouveau dossier\" & Sheets(1).Name
  Workbooks(N$).SaveAs Filename:=NomDuClasseurSVG$
Next
Application.DisplayAlerts = True
End Sub

Roland
 
Re : Sauvegarde automatique tous les classeurs ouverts

Bonsoir le fil,

J'ai juste un remarque à faire.
La macro tu la mettra dans le 51e classeur?
Si c'est le cas ce code enregistre tous les classeurs et les ferme sauf le classeur contenant la macro:

Code:
Sub sauve()
Dim classeur As Workbook
For Each classeur In Workbooks
    If classeur.Name <> ThisWorkbook.Name Then
        classeur.SaveAs "C:\Users\Alex\Desktop\Nouveau dossier\" & classeur.Sheets(1).Name & ".xls"
        classeur.Close
    End If
Next
End Sub
 
Re : Sauvegarde automatique tous les classeurs ouverts

merci bcp Rolland !

où dois je integrer ce code ?

qd je l exectue voila ce que ca donne : j ai un message d erreur :

erreur d execution 1004
impossible d enregistrer ce classeur sous le meme nom qu un autre classeur ou macro complementaire ouvert . Choisissez un nom different , ou fermer l autre classeur ou macro complementaire avant l enregistrement
 
Re : Sauvegarde automatique tous les classeurs ouverts

re
voir exemple et remarques de Skoobi,
c'est exacte il faut tester ci ce n'est pas le classeur qui excute le code ThisWorkbook

soit le test suivant If classeur.Name <> ThisWorkbook.Name Then
sans oublier de rajouter(j'ai fait trop vite) le (.xls)

et dans le dernier classeur !

Roland
 
Re : Sauvegarde automatique tous les classeurs ouverts

re,

En début de macro de Roland :

1. Mettre Option explicit --> avant Public Sub SaveTousClasseursOpen()
2. Déclare la variable Dim C as byte

Et n'oublie pas ma remarque au sujet du profil utilisateur. Cela t'évitera peut être des pb un jour.

Dan
 
Re : Sauvegarde automatique tous les classeurs ouverts

Re-,
et si je peux me permettre :

Code:
Option Compare Text
Sub essai()
chemin = ActiveWorkbook.Path & "\"
For Each wb In Workbooks
    If Not wb.Name Like "perso*" Then
        Application.DisplayAlerts = False
        With wb
            .SaveAs chemin & .Sheets(1).Name & ".xls"
        End With
        Application.DisplayAlerts = True
    End If
Next wb
End Sub

Il suffit d'un perso.xls pour mettre l'embrouille (j'ai cherché un mot qui allait bien....😀)
 
Re : Sauvegarde automatique tous les classeurs ouverts

Ok merci Dan pr le conseil !
j ai pris note et vais changer mon dossier de place !

concernant le code, j ai finalement reussi a le faire fonctionner! 🙂

merci le forum !!!


MAIS...(il y'en a tjrs un...)

je souhaite à présent intégrer dans mon code une fonction qui AVANT d'enregistrer le classeur dans mon dossier SUPPRIME toutes les images contenus dans le classeur...
Quelqu un peux t il ajuster le code de SKOOBI ?

MERCI ENCORE
 
Notre forum d’entraide est 100 % gratuit et le restera.
Aucune formation payante, aucun fichier à acheter, rien à vendre. Mais comme tout site, nous devons couvrir nos frais pour continuer à vous accompagner.
Soutenez-nous en souscrivant à un compte membre : c’est rapide, vous choisissez simplement votre niveau de soutien et le tour est joué.

Je soutiens la communauté et j’accède à mon compte membre

Discussions similaires

Retour