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/coller des lignes dans feuilles crées


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut copier/coller des lignes dans feuilles crées
    Bonsoir,

    grâce au code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub CréerFeuilles()
      i = 1
        Do Until IsEmpty(Feuil1.Cells(i, 1))
           Sheets.Add after:=Worksheets(Worksheets.Count)
           ActiveSheet.Name = Feuil1.Cells(i, 1).Value
           i = i + 1
      Loop
    End Sub
    J'arrive à créer des feuilles avec le nom se trouvant dans les cellules A.
    exemple :
    A1 europe
    A2 asie....

    les feuilles créés s'appellent europe, asie, etc...
    En fait, j'ai un listing ~1000 lignes où il y a europe, asie, usa, afrique....
    j'ai le listing total dans une feuille "total" et j'aimerai copier/coller les valeurs des lignes+colonnes dans chaque feuilles crées par rapport à leur nom.

    En clair, dans la feuille "europe" uniquement les valeurs de la colonne A de "europe"+ toutes les données des colonnes B,C, etc....

    Jusqu'à présent, je copiais/collais dans chaque feuilles puis appliquais un filtre automatique, mais ça plante quand il n'y a pas de valeurs....

    Merci
    A+

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Tu peux essayer un truc du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub test()
    Dim i As Integer, j As Integer
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        For j = 2 To Sheets.Count
            If Cells(i, 1) = Sheets(j).Name Then
            Rows(i).Copy Sheets(j).Cells(Rows.Count, 1).End(xlUp)(2)
            Exit For
            End If
        Next j
    Next i
    End Sub
    Ce code est à adapter si par exemple tu comptes faire des mises à jour, tel quel le code va te recopier toutes les valeurs trouvées à chaque mise à jour.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    855
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 855
    Par défaut
    Merci Fring,

    Super ce code !!!
    J'essaye juste de l'améliorer depuis ce matin : ton code réparti bien dans toutes les feuilles Afrique,....mais il faut que je puisse remettre la première ligne ("A1:IU1") car c'est là que se trouve les titres de colonnes....

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub test()
    Dim i As Integer, j As Integer
    Range("a1:iu1").Copy
     
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
        For j = 2 To Sheets.Count
            If Cells(i, 1) = Sheets(j).Name Then
            Rows(i).Copy Sheets(j).Cells(Rows.Count, 1).End(xlUp)(2)
     
            Exit For
            End If
        Next j
    Next i
    End Sub
    Et je plante....pourtant, je sais que c'est simple, mais j'arrive pas à placer range("A1:IU1").paste pour coller la première ligne dans chaque feuille....

    Merci,
    A+

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

Discussions similaires

  1. [XL-2010] Problème macro copier-coller des cellules dans deux feuilles Excel
    Par benadry dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/04/2014, 20h05
  2. Copier coller des lignes à l'inverse
    Par SybVicious dans le forum Excel
    Réponses: 4
    Dernier message: 23/02/2008, 12h56
  3. Réponses: 3
    Dernier message: 10/01/2008, 11h12
  4. Réponses: 2
    Dernier message: 01/08/2007, 16h46
  5. copier/coller des graphiques dans le presse-papier
    Par legos dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 11/01/2007, 14h04

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