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

Excel Discussion :

copier une ligne entiere suivant même cellule


Sujet :

Excel

  1. #1
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Avril 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Avril 2016
    Messages : 50
    Points : 45
    Points
    45
    Par défaut copier une ligne entiere suivant même cellule
    Bonjour ,


    Je cherche a recopier la ligne entier d'un onglet dans un autre onglets suivant une meme cellule de reference .

    Voir exemple .

    Merci d'avance pour votre aide

    PS : j'ai bq de lignes

  2. #2
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut
    On est peu enclins à ouvrir les annexes.
    Demande peu claire !
    Voulez-vous faire une copie manuellement ou via une macro?
    Avez-vous un exemple concret ?, capture d'écran ?

  3. #3
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 240
    Points : 5 655
    Points
    5 655
    Par défaut
    Bonjour,

    Une proposition à adapter
    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
    Sub Recup_Valeurs()
        Dim f1 As Worksheet, f2 As Worksheet
        Dim DerLig_f1 As Long, DerCol_f2 As Long
        Dim i As Long
        Dim x As Object
        Application.ScreenUpdating = False
        Set f1 = Sheets("Resultat")
        Set f2 = Sheets("Origine")
        DerLig_f1 = f1.[A10000].End(xlUp).Row
        For i = 1 To DerLig_f1
            Set x = f2.Columns(1).Find(f1.Cells(i, "A"), LookIn:=xlValues, lookat:=xlWhole)
            If Not x Is Nothing Then
                DerCol_f2 = f2.Cells(x.Row, "ZZ").End(xlToLeft).Column
                f2.Rows(x.Row).EntireRow.Copy Destination:=f1.Cells(i, "a")
            End If
        Next i
    End Sub
    Cdlt

  4. #4
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Salut.

    Je rejoins Zekraoui_Jakani (Salut!): quelle ligne(s)? Sur base de quel critère?

    Avec un peu plus de détails, on pourra t'aiguiller vers une solution sans pondre du code pour rien (Power Query, vba, tcd, ...)
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 240
    Points : 5 655
    Points
    5 655
    Par défaut
    Bonjour,

    En attendant que jtsfab veuille bien se manifester

    Envoyé par Pierre Fauconnier
    Avec un peu plus de détails, on pourra t'aiguiller vers une solution sans pondre du code pour rien (Power Query, vba, tcd, ...)
    Pour aider un peu
    feuille "Origine"
    Pièce jointe 509798

    feuille "Resultat"
    Pièce jointe 509799

    Dommage que ma solution soit sanctionnée par un -1 avant qu'il y ait eu d'autres propositions plus fonctionnelles.

    Cdlt

  6. #6
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Il n'y a pas d'agressivité dans mes propos. Je pense simplement qu'il est inutile de tenter une approche codée sur aussi peu de détails, sinon, dans 50 messages, on en sera toujours à "supposer" ce qui est attendu. Il ne saurait y avoir plus de propositions fonctionnelles, à moins d'avoir du temps à perdre à coder sur des suppositions



    Citation Envoyé par ARTURO83 Voir le message
    [...]Dommage que ma solution soit sanctionnée par un -1[...]
    Quant aux jérémiades de bac à sable sur les -1, bah...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  7. #7
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 240
    Points : 5 655
    Points
    5 655
    Par défaut
    Je n'ai jamais parlé d'agressivité et ne pleurniche pas sur le -1, seulement j'estime que la réponse que j'avais fourni correspondait aux besoins demandés, c'est tout.

  8. #8
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Avril 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Avril 2016
    Messages : 50
    Points : 45
    Points
    45
    Par défaut
    bonjour, merci pour vos réponses

    je pensais que l'exemple fourni allait suffire , apparemment non. Désolé


    Pour essayer de répondre aux questions,

    j'ai un onglet "origine" avec plusieurs lignes (600000 lignes )dont la référence est en colonne A et dont les infos de cette ligne sont sur les autres colonnes

    Dans l'onglets "résultat" j'ai cette meme référence en colonne A ( mais elle est en réalité en colonne P et débute à la 2eme ligne) , dont je dois ajouter les infos venant de l' onglet "origine"

    Je ne suis pas sur d'etre plus clair .

    Merci pour votre aide

    Cdt
    Fichiers attachés Fichiers attachés

  9. #9
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Tu aurais intérêt à travailler avec des tableaux structurés. Normalement, la source au moins devrait être une table de données. Dans l'exemple qui suit, j'ai également considéré que la cible était un tableau structuré. Ton code est alors beaucoup plus simple à écrire et tu n'as pas besoin de savoir où se situent tes données (feuille, première ligne, colonne d'arrivée) car Excel gère cela tout seul.

    Ici, j'ai considéré un tableau nommé t_Source et un nommé t_Cible. Dans l'exemple, ils sont sur la même feuille mais tu les mets où tu veux et si tu les déplaces, il n'y a aucun problème, ton code continue à fonctionner. Comme dans l'exemple d'Arturo, j'ai considéré que tes colonnes étaient dans le même ordre dans les deux tableaux.

    Code vba : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Sub Transfer()
      Dim Target As Range
      Dim Source As Range
     
      Application.ScreenUpdating = False
      For Each Target In Range("t_Cible[ID]")
        Set Source = Range("t_Source[ID]").Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
        If Not Source Is Nothing Then Source.Resize(1, Range("t_cible").Columns.Count).Copy _
          Destination:=Target.Resize(1, Range("t_Cible").Columns.Count)
      Next
    End Sub

    Le code s'adaptera facilement si tu n'utilises pas les tableaux structurés...
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  10. #10
    Membre du Club
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Avril 2016
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Avril 2016
    Messages : 50
    Points : 45
    Points
    45
    Par défaut
    MErci Pierre ,
    Je suis en train de tester cela , ca a l'air de fonctionner .

    A voir demain


    Cdt

  11. #11
    Membre émérite
    Homme Profil pro
    Formateur et développeur bureautique
    Inscrit en
    Mars 2007
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur et développeur bureautique
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 413
    Points : 2 875
    Points
    2 875
    Par défaut
    Bonjour

    Je me permets juste d'indiquer qu'il faut rajouter Application.ScreenUpdating = True dans le code de Pierre Fauconnier sur une nouvelle ligne entre le Next et le End Sub.

    Bonne journée

    Pierre Dumas
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  12. #12
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 240
    Points : 5 655
    Points
    5 655
    Par défaut
    Bonjour,

    Envoyé par Pierre Dumas
    Je me permets juste d'indiquer qu'il faut rajouter Application.ScreenUpdating = True dans le code de Pierre Fauconnier sur une nouvelle ligne entre le Next et le End Sub.
    Et si on ne met pas cette ligne que se passe t-il?

    Cdlt

  13. #13
    Membre émérite
    Homme Profil pro
    Formateur et développeur bureautique
    Inscrit en
    Mars 2007
    Messages
    1 413
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Formateur et développeur bureautique
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2007
    Messages : 1 413
    Points : 2 875
    Points
    2 875
    Par défaut
    Citation Envoyé par ARTURO83 Voir le message

    Et si on ne met pas cette ligne que se passe t-il?
    La mise à jour de l'écran peut ne pas s'effectuer. Ce qui serait dommage (pour le moins).

    Belle journée

    Pierre Dumas
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  14. #14
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 921
    Points
    55 921
    Billets dans le blog
    131
    Par défaut
    Citation Envoyé par Pierre Dumas Voir le message
    Bonjour

    Je me permets juste d'indiquer qu'il faut rajouter Application.ScreenUpdating = True dans le code de Pierre Fauconnier[...]
    Application.ScreenUpdating est remis automatiquement à True en fin de macro, lorsque l'on repasse la main à Excel. Il n'est pas nécessaire de le basculer par code
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

Discussions similaires

  1. Réponses: 11
    Dernier message: 14/01/2016, 17h04
  2. [XL-2003] Formulaire, copier une textbox dans la même ligne que les autres
    Par jbelleng dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 30/08/2011, 13h25
  3. [XL-2003] copier une ligne d'un fichier txt vers une cellule
    Par hatemhatem dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/03/2010, 13h20
  4. copier une ligne d'une cellule et la coller
    Par sam01 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 11/07/2006, 14h34
  5. [VBA-E] Copier et coller une ligne entiere
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 30/05/2006, 15h51

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