IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

comment créer une copie de sauvegarde d'une feuille d'un classeur possédant plusieurs feuilles [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 10
    Points
    10
    Par défaut comment créer une copie de sauvegarde d'une feuille d'un classeur possédant plusieurs feuilles
    Bonjour,

    Tout est dans l'intitulé, je voudrais faire une copie de sauvegarde de la première feuille uniquement d'un classeur possèdant plusieurs feuilles.
    je suis novice, je le précise.... j'ai créer un bouton et affecté la macro suivante trouvée sur le forum.....ça fonctionne bien mais c'est tout le classeur qui est sauvegardé alors que je souhaiterais uniquement la première feuille nommée "synthèse" comment modifier cette instruction? je voudrais aussi que le mois affiché dans le titre de la sauvegarde soit au format janv,fev... (ex: 08-janv-2011) et non 01 ou 02 (08-01-2011) est-ce facillement réalisable?
    Pour information la feuille "synthèse" est protégée en écriture
    Merci de votre aide

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Dim Chemin As String, Fichier As String
     
    Chemin = "C:\Dossier Archivage\"
    'Ajoute la date du jour et l'heure dans le nom du fichier
    Fichier = "NomClasseur_" & Format(Date, "mm-dd-yyyy") & ".xls"
     
    ActiveWorkbook.SaveCopyAs Chemin & Fichier
    .

  2. #2
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonsoir,

    essayes come ça en adaptant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim Chemin As String, Fichier As String
     
    Chemin = "C:\Dossier Archivage\"
    Sheets("synthèse").Copy
    Fichier = "synthèse_" & Format(Date, "dd-mmm-yyyy") & ".xls"
    ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, _
            FileFormat:=xlExcel8, CreateBackup:=False
    Windows("Classeur1").Activate

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    merci beaucoup,ça marche à merveille!!!
    juste une chose, lorsque je ferme le classeur principal, la feuille "synthèse" reste affichée en arrière plan....il faut que je la ferme aussi...il y a moyen de faire la sauvegarde sans affichage de la feuille "synthése" à l'écran?

    bravo et encore Merci !

  4. #4
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    tout simplement,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim Chemin As String, Fichier As String
     
    Chemin = "C:\Dossier Archivage\"
    Sheets("synthèse").Copy
    Fichier = "synthèse_" & Format(Date, "dd-mmm-yyyy") & ".xls"
    ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, _
            FileFormat:=xlExcel8, CreateBackup:=False
    ActiveWorkbook.close

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    MERCI beaucoup, c'est nickel !
    encore bravo!!!!!

  6. #6
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Bonsoir,

    message de nono :
    J'ai réussit en retirant l'instruction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     FileFormat:=xlExcel8, CreateBackup:=False
    et ça semble bien fonctionner avec ma version XLS 2002.

    Mais comment protéger automatiquement la feuille qui est alors sauvegardé (c'est l'historique de maintenances et tout le monde doit pouvoir le consulter sans le modifier)
    Comment le faire automatiquement sur la macro existante?
    je penses que ce qui serait le plus simple c'est de la mettre en lecture seule par défaut au moment de la création de la sauvegarde...mais comment faire ?

    Si vous avez une idée...je vais continuer de chercher de mon coté...j'ai la solution de reprendre le fichier créer et de le protéger en écriture mais c'est dommage si ça peut ce faire automatiquement...

    Cordialement
    la macro est devenue:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Archivage()
    Dim Chemin As String, Fichier As String
    Chemin = "C:\Documents and Settings\Mes documents\"
    Sheets("synthèse MCO").Copy
    Fichier = "Historique MCO centrale du_" & Format(Date, "dd-mmm-yyyy") & ".xls"
    ActiveWorkbook.SaveAs Filename:=Chemin & Fichier
    ActiveWorkbook.Close
    End Sub
    je pensai que tu étais sur excel 2003, c'est pour ça que tu avais , pour excel 2002, je ne connais pas le code.
    Pour ce qui est de protéger ta feuille, tu peux le faire, mais n'envisages-tu pas d'enregistrer ton archive en PDF, pour excel 2002, dans ce cas, il faudrait un petit logiciel gratuit comme Pdfcreator

    a +

  7. #7
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Voilà, j'ai simulé le mot de passe "aaa" en écriture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Archivage()
    Dim Chemin As String, Fichier As String
    Chemin = "C:\Documents and Settings\Mes documents\"
    Sheets("synthèse MCO").Copy
    Fichier = "Historique MCO centrale du_" & Format(Date, "dd-mmm-yyyy") & ".xls"
    ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, _
            Password:="", WriteResPassword:="aaa", _
            ReadOnlyRecommended:=True
            ActiveWorkbook.Close

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par casefayere Voir le message
    Bonsoir,

    message de nono :


    je pensai que tu étais sur excel 2003, c'est pour ça que tu avais , pour excel 2002, je ne connais pas le code.
    Pour ce qui est de protéger ta feuille, tu peux le faire, mais n'envisages-tu pas d'enregistrer ton archive en PDF, pour excel 2002, dans ce cas, il faudrait un petit logiciel gratuit comme Pdfcreator

    a +
    Non, je ne peux pas utiliser Pdfcreator car la feuille sauvegardé
    utilise des macros qui filtre les données par installations ou dates et il faut que ça reste opérationnel pour consultation.si j'arrive à trouver une instruction qui place automatiquement le fichier en lecture seul lors de la création de la sauvegarde automatique ça me suffit...
    Merci encore pour m'avoir aidé
    JL

  9. #9
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Regardes mon avant-dernier message

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    16
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 16
    Points : 10
    Points
    10
    Par défaut
    Citation Envoyé par casefayere Voir le message
    Voilà, j'ai simulé le mot de passe "aaa" en écriture :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub Archivage()
    Dim Chemin As String, Fichier As String
    Chemin = "C:\Documents and Settings\Mes documents\"
    Sheets("synthèse MCO").Copy
    Fichier = "Historique MCO centrale du_" & Format(Date, "dd-mmm-yyyy") & ".xls"
    ActiveWorkbook.SaveAs Filename:=Chemin & Fichier, _
            Password:="", WriteResPassword:="aaa", _
            ReadOnlyRecommended:=True
            ActiveWorkbook.Close
    Tu es trop fort ! Chapeau bas ! ça marche nickel !
    merci encore pour tout et bonne continuation...
    JL

  11. #11
    Expert éminent Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Points : 9 548
    Points
    9 548
    Par défaut
    Ravi de te rendre service mais le code me chagrine car après vérification, ça devrait passer pour les versions de 97 à 2003.

    donc, à revoir, cherches dans le forum, quoique j'ai vu ce lien
    http://www.developpez.net/forums/d53...on-dexcel-vba/

    Bonne soirée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment créer un effet d'ouverture d'une porte
    Par diden138 dans le forum Flash
    Réponses: 1
    Dernier message: 29/11/2006, 21h30
  2. Comment créer un site immobilier dynamique avec une base de données ?
    Par Alain troverti dans le forum Général Conception Web
    Réponses: 14
    Dernier message: 07/07/2006, 21h57
  3. Créer un fichier de sauvegarde d'une BDD access
    Par theking dans le forum Access
    Réponses: 4
    Dernier message: 05/07/2006, 14h04
  4. Réponses: 3
    Dernier message: 06/06/2006, 08h06
  5. Créer une copies de sauvegarde automatiquement
    Par alexander dans le forum Administration
    Réponses: 5
    Dernier message: 19/03/2005, 23h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo