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 :

Macro copier coller d'une plage sur nouveau fichier excel sous condition


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Finance
    Inscrit en
    Février 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Finance

    Informations forums :
    Inscription : Février 2014
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Macro copier coller d'une plage sur nouveau fichier excel sous condition
    je suis débutant en macro et je voudrais pouvoir lancer une macro qui permettrait de copier/coller une plage excel dans un nouveau fichier dès lors que jai un changement de valeur dans une colonne cf exemple en pj.

    En gros dès lors que la valeur age est différente de la suivante : D8 <> de D9; alors je copie colle toute la plage avec un age égale à 13 dans un nouveau fichier excel; et ainsi de suite pour chaque valeur âge différente (voir ci-dessous nouveau fichier 1, nouveau fichier 2,....)

    merci de votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 207
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 207
    Points : 14 362
    Points
    14 362
    Par défaut
    Bonjour,

    Essaie ceci; s'il y a quelque chose que tu ne comprends pas, dis-le.

    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
    30
    31
    32
    33
    34
    35
    36
    Sub CreationFichiersAge()
        Dim C As Range     ' pour boucler sur la colonne A
        Dim Ctr As Integer 'Pour le n° de fichier
        Dim DerLigne As Long   'n° de la dernière ligne
        Dim Wbk As Workbook 'variable représentant les classeurs créés
        Dim Sh As Worksheet 'variable représentant la feuille lue
        Dim Ligne As Long 'ligne en écriture
        'Sh est la feuille en lecture
        Set Sh = ThisWorkbook.Sheets(1)
        'détermination de la dernière ligne
        DerLigne = Sh.Cells(Rows.Count, 1).End(xlUp).Row
        'boucle sur les cellules de la colonne A
        For Each C In Range("A2:A" & DerLigne)
            'Création d'un nouveau fichier
            If C.Row = 2 Or C.Offset(0, 3).Value <> C.Offset(-1, 3).Value Then
                'si la ligne > 2 on enregistre et on ferme le fichier
                If C.Row > 2 Then
                    Wbk.SaveAs ThisWorkbook.Path & "\" & "Nouveau fichier " & Ctr
                    Wbk.Close False
                End If
                Ctr = Ctr + 1
                'création du fichier référencé par la variable Wbk
                Set Wbk = Workbooks.Add
                'recopie des titres
                Ligne = 1
                Wbk.Sheets(1).Cells(Ligne, 1).Resize(1, 4).Value = Sh.Cells(1, 1).Resize(1, 4).Value
            End If
            With Wbk.Sheets(1)
                Ligne = Ligne + 1
                'recopie des 4 cellules
                .Cells(Ligne, 1).Resize(1, 4).Value = Sh.Cells(C.Row, 1).Resize(1, 4).Value
            End With
        Next C
        Wbk.SaveAs ThisWorkbook.Path & "\" & "Nouveau fichier " & Ctr
        Wbk.Close False
    End Sub

Discussions similaires

  1. [EXCEL 2010] copier coller marche une fois sur deux
    Par gilles171 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 22/04/2015, 16h51
  2. Macro copier coller d'une plage dans un nouveau fichier Excel sous condition
    Par lapagaille dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2014, 17h27
  3. Macro copier coller dans une autre feuille
    Par olivverte dans le forum Excel
    Réponses: 23
    Dernier message: 17/12/2013, 14h35
  4. Réponses: 3
    Dernier message: 23/09/2006, 15h19
  5. copier une plage d'un fichier Excel non ouvert vers la feuille en cours
    Par mich2704 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/06/2006, 12h30

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