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 :

copier une feuille en conservant les macro [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut copier une feuille en conservant les macro
    Bonjour,

    Je me trouve de nouveau confronté à un problème

    J'ai un classeur A ou se trouve une macro qui ouvr eun classeur B et rempli des données

    J'aimerai lorsque l'on clique sur une celule de la feuille 1 du classeur B, ça ouvre une nouvelle feuille

    J'ai ce code sur la feuille du classeur A
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    With Target
            If .Cells.Count > 1 Then
     
                Exit Sub
            End If
            If .Column = 1 Then
                 If .Value <> "" And IsNumeric(Target.Value) Then
                    .Font.ColorIndex = 3
                    .Interior.ColorIndex = 6
                    .Font.Bold = True
                    Sheets.Add After:=Sheets("Rapport_Analyse")
                   End If
             End If
    End With
    End Sub
    Mais je ne sais pas où placer ce code.

    Ou alors ce qui me faudrait , ca serait de copier une feuille de mon classeur A et la coller sur mon classeur B

    Mais il faut que les macros associé à cette feuille soit copier en même temps

    Est-ce possible?

    La deuxième méthode semble plus possible, mais je prend toutes propositions

    Merci d'avance
    Cordialement
    Dorian Rapoud

  2. #2
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.

    Si tu copies une feuille modèle, son module associé est copié en même temps.

    Cordialement,

    PGZ

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut
    Bonjour pgz,

    comment fais tu pour créé une feuille modèle ?

  4. #4
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonsoir.

    Une feuille modèle est une feuille comme une autre. Simplement elle est là pour être dupliquée. Quand tu veux ajouter une feuille, au lieu d'en créer une, tu copies celle qui te sert de modèle et qui, ici, a le module de code qui va bien.

    Cordialement,

    PGZ

  5. #5
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut
    Merci pour ces explications pgz
    malheureusement je ne comprend pas

    J'ai essayer de copier une feuille comme tu la dis (feuil7) et la coller dans un nouveau classeur, mais le code VBA ne suit pas :'(

    Quelqu'un aurait-il un exemple?

  6. #6
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    229
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 229
    Par défaut
    Bon j'ai un code qui à l'air de fontionner

    Le problème c'est que je n'arrive pas à nommer le nouveau classeur créer
    J'aimerai le sauvegarder en tant que "fichier analyse " & Format(Date, "dd_mmm_yyyy") & ".xlsx"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    Dim wb1 As Workbook
    Dim wb As Workbook
    Dim Chemin As String, Fichier As String
     
    Application.ScreenUpdating = False
     
    Chemin = "C:\Data\"
    Fichier = "fichier analyse " & Format(Date, "dd_mmm_yyyy") & ".xlsx"
     
    'Si le fichier existe déjà
    If Dir(Chemin & Fichier) <> "" Then
        On Error Resume Next
        Set wb1 = Workbooks(Fichier)
        On Error Resume Next
        'si le fichier est ouvert (dans la même instance excel), on le ferme
        If Not wb1 Is Nothing Then wb.Close False
    End If
     
    Set wb = Workbooks("analyse tarif t & t-1.xls")
    set wb1 =wb.Worksheets("Rapport_Analyse").Copy
    'J'aimerai nommer cette feuille, seulement je ne trouve pas de moyen de le faire
     
    Application.DisplayAlerts = False
     
    wb1.SaveAs Chemin & Fichier
    Application.DisplayAlerts = True
    Set wb = Nothing
    Set wb1 = Nothing
    Merci de me venir en aide pour faire fonctionner ce code

    Merci d'avance

  7. #7
    pgz
    pgz est déconnecté
    Expert confirmé Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Par défaut
    Bonjour.


    Citation Envoyé par dodo69 Voir le message
    J'ai essayer de copier une feuille comme tu la dis (feuil7) et la coller dans un nouveau classeur, mais le code VBA ne suit pas
    Pour copier la feuille "Modele" du classeur A dans le classeur B en dernière position
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    wbkA.Worksheets("Modele").Copy ,WbkB.Worksheets(WbkB.Worksheets.Count)
    WbkB.Worksheets(wbkB.WOrksheets.count).Name = "NomDeLaNouvelleFeuille"
    Avec WbkA variable de type WorkBook contenant une référence au classeur A, et WbkB idem pour le classeurB.
    Il faut que les 2 classeurs soient ouverts dans la même application, c'est-à-dire que les 2 classeurs fassent partie de la même collection Workbooks.

    Cordialement,

    PGZ

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

Discussions similaires

  1. [XL-2002] Macro pour copier une feuille dans un autre classeur
    Par JBeaunez dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/02/2012, 21h46
  2. [XL-2007] Macro pour copier une feuille
    Par francky62000 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 14/12/2011, 16h36
  3. MACRO - Copier une feuille dans toutes les feuilles (sauf 2)
    Par macto dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 09/02/2011, 08h53
  4. [Toutes versions] Copier une feuille en verrouillant les noms de feuilles référencées
    Par zampano dans le forum Excel
    Réponses: 1
    Dernier message: 19/06/2010, 17h05
  5. [EXCEL] copier une feuille sans changer les liaisons
    Par DidRocks dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 09/09/2005, 13h29

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