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 :

Copie de classeur sans macro


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 196
    Par défaut Copie de classeur sans macro
    Bonjour,

    j'ai un fichier Excel, et lorsque je le sauvegarde, je souhaite sauvegarder en même temps une copie à un autre emplacement.
    Pour cela, j'ai ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
        Chemin = "\\serveur\partage\"
        ThisWorkbook.SaveAs Chemin & "MaCopie.xls"
    End Sub
    Le problème, c'est que ça me garde la macro.
    Comment faire pour que la copie soit sans code VBA ?

    Merci

  2. #2
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Je pense que tu pourrais essayer de supprimer le code par la suite. Quelques idées :
    Une contribution de ouskel'n'or pour supprimer les module
    http://www.developpez.net/forums/d33...fichier-donne/
    Le tuto pour piloter l'éditeur de macro
    http://silkyroad.developpez.com/VBA/VisualBasicEditor/

    Après ne te lance pas tout de suite il est probable que quelqu'un ai une méthode directe bien plus simple

  3. #3
    Membre Expert Avatar de aalex_38
    Inscrit en
    Septembre 2007
    Messages
    1 631
    Détails du profil
    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 631
    Par défaut
    Bonjour,

    A mon avis tout dépend si tu as du code dans les feuilles ou pas.

    Si tu n'as pas de code, il te suffit de copier les feuilles dans un nouveau classeur.

    Sinon je ne vois pas de solution de contournement à part la suppression du code.

    Edit : Une autre solution possible serait de recopier toutes les données d'un classeur a l'autre, mais dans ce cas je prfère la suppression de macro.

    Edit2 : Même dans ma version 2003, je viens de me rendre compte que je peux convertir au format 2007 et avec l'extension xlsx plus de macro, je n'ai pas essayé si c'est possible par code, a voir.

  4. #4
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Edit2 : Même dans ma version 2003, je viens de me rendre compte que je peux convertir au format 2007 et avec l'extension xlsx plus de macro, je n'ai pas essayé si c'est possible par code, a voir.
    A condition d'avoir installer la mise a jour pour être compatible avec 2007. Ce qui n'est pas le cas partout (en tout cas c'est pas fait la ou je suis )
    Mais si cela est possible c'est la solution la plus simple

  5. #5
    Membre confirmé
    Inscrit en
    Décembre 2006
    Messages
    196
    Détails du profil
    Informations forums :
    Inscription : Décembre 2006
    Messages : 196
    Par défaut
    Je n'ai pas de code dans les feuilles.
    Comment faire pour copier les feuilles dans un nouveau classeur ? En plus, j'ai une dizaine de feuilles...
    Merci

  6. #6
    Membre Expert Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Par défaut
    Pour copier les feuilles
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    dim ws as worksheet 'déclaration de la variable ws est du type onglet
    Application.ScreenUpdating = False 'pas de mise a jour de l'écran
    For each ws in thisworkbook.worksheets
    'pour chaque onglet parmis les onglets de ce classeur
    ws.Copy After:=Workbooks("CopisansMacro.xls").Sheets(Workbooks("CopisansMacro.xls").sheets.count)
    'on copy le 'onglet après le dernier du classeur CopisansMacro.xls
    next ws
    Application.ScreenUpdating = True 'mise a jour de l'écran
    Ps : Cela ne fonctionnera pas avec les onglet Graphique

    Edit : j'ai ajouté les Application.ScreenUpdating

Discussions similaires

  1. [XL-2007] Enregistrement de classeur sans macro
    Par Bugalet dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 27/09/2018, 10h26
  2. [XL-97] Créer un nouveau classeur sans macro
    Par skk201 dans le forum Excel
    Réponses: 2
    Dernier message: 28/02/2014, 12h15
  3. [XL-2010] Peut-on sauvegarder une copie du classeur des macros personnelles?
    Par statista dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/03/2011, 10h11
  4. Enregistrer Un Classeur Sans Les Macros
    Par potters dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 20/06/2007, 08h48
  5. Renommer un classeur sans altérer une macro associée.
    Par Antho44 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 15/06/2007, 11h44

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