Duplication de cellules excel

Résolu
Bonjour,

J'aurai besoin d'un petit coup de pouce. J'ai un document avec une liste de code (plus de 800 différent), séparé entre chacun d'un nombre de cellules vides. Je souhaiterais dupliquer chaque code 3 fois.
Explication plus détaillée dans le fichier suivant:

https://www.cjoint.com/c/EDdjph2iose

Le résultat attendu se trouve sur la feuille "Résultat".
Je souhaiterai si possible résoudre se problème grâce à du code Visual Basic.

Merci de votre aide.
Dylan.

9 réponses

  1. Bonjour,
    Ma proposition : http://www.cjoint.com/c/EFdoiNOQOAY
    0
    1. Bonjour,

      Merci de ta réponse elle correspond a mes attentes.

      Dylan
      0
  2. Bonjour,
    Je tiens à vous faire remarquer que la procédure a été réaliser pour l'exemple fourni soit en colonne [A3 :A..] les référence [RD..] à concaténer avec les valeurs (titre colonne) de la ligne [2] et ceci chaque valeur contenue dans la colonne y relative.
    Maintenant il s'agit de valeurs dans une plage (une colonne) se trouvant n'importe où sur la feuille et de ce fait la procédure ne peut pas la trouver et de plus il n'y a pas de concaténation à réaliser donc cette procédure ne convient pas.
    J'attends des précisions de votre part pour la suite.
    En marge, des colonnes sans titre c'est du n'importe quoi...!

    Salutations.
    Le Pingou
    0
    1. Bonjour,

      Dans un premier temps se document est juste un rapide exemple pour avoir une vision de mon objectif à atteindre, alors non se n'est pas du n'importe quoi ... !
      Dans un second temps, n'y a t'il pas moyen de sélectionné toutes les cellules avec des données, dans la feuil1 pour les collés ensuite ?? plutôt que de sélectionné les codes inclus dans une certaine plage.
      Je m'arrangerais avec cela, si c'est possible...
      0
  3. Bonjour,
    Voir la proposition ou les nombres saut et recopie (doublon) par choix sur formulaire (UserForm).
    Le fichier : https://www.cjoint.com/?0EFwLePz3Av

    0
    1. Bonjour,

      Ta réponse à mon problème fonctionne très bien.
      Cependant des que je change de disposition les codes et que je les place sous forme de liste, cela ne fonctionne plus. Je n'arrive pas à déboguer ce problème.
      Voici un exemple:
      https://www.cjoint.com/c/EFcnX7AkRsG

      Merci
      0
  4. Bonjour,
    Merci pour le fichier.
    Je pense que la procédure est utilisable en y ajoutant les compléments pour la rendre plus souple d'utilisation sans devoir intervenir dans le code (entrer les paramètres avant).
    Je suis absent pour le week-end, ce sera pour lundi.

    0
    1. Bonjour,
      A première vue il semble que ce n'est pas le même problème que le poste résolu.
      Pouvez-vous expliquer ce que vous voulez avoir comme résultats et peut-être que la solution précédente est envisageable ... !
      Merci de joindre le fichier que j'ai transmis en avril passé.

      0
      1. Bonjour,
        Ci-dessous le document, envoyé précédemment, avec quelques modifications que j'y est apporté :
        https://www.cjoint.com/c/EEDizDUUFZE
        Je souhaiterais savoir exactement que doit-je changer dans le code avec exactitude pour:
        - passé d'un écart de 6 cellules à 2 ou 3 par exemple
        - recopié seulement 2-3 fois chaque code et non 4 fois

        Le code déjà présent marche mais il n'est quasiment pas modifiable...

        J'espère être clair et que vous comprenez bien ma question!!!
        Merci
        0
    2. Bonjour,

      Je suis confronté à un problème fréquemment, lorsqu'il s'agit de collé des cellules à répétition avec un écartement entre elle (comme précédemment).

      https://www.cjoint.com/c/EEBqedDVeae

      Au préalable, j'ai déjà posé une question à se sujet, et j'ai ainsi reçu une réponse par macro, mais qui est vraiment compliqué comparé à mon niveau d'Excel en code.

      Est il possible d'avoir un code VBA comme solution. Et qui est très très simple, avec tout les détails et astuces pour pouvoir l'adapté aux autres documents.

      Merci d'avance
      0
      1. Bonjour,
        J'ai un peu d'avance, les explications sont dans la procédure.
        Voir fichier : https://www.cjoint.com/?3DhsJEcBGPa

        0
        1. Bonjour,
          Merci de t'a réponse, ton code fonctionne à merveille et répond à mes attentes.
          C'est donc un sujet résolu.
          Et merci de ton explication qui est, d'ailleurs vraiment bien détaillé.
          Dylan
          0
        2. Merci, de rien
          Bonne suite
          0
      2. Bonjour,
        Merci pour l'information.
        OK pour une explication du code, ce sera pour demain mercredi.

        0
        1. Bonjour,
          Selon ce que j'ai compris, il est possible de le réaliser avec une procédure.
          Je vous laisse essayer ce code :
          Sub copier4saut5()
          Dim code()
          nl = Cells(Rows.Count, 1).End(xlUp).Row
          nc = Cells(2, Columns.Count).End(xlToLeft).Column
          c = 0
          Set shr = Sheets("Résultat")
          ReDim code(1)
          For co = 2 To nc
              For li = 3 To nl
                  If Len(Cells(li, co)) > 3 Then
                  code(c) = Cells(li, co).Value
                  c = c + 1
                  ReDim Preserve code(0 To c)
                  End If
              Next li
          Next co
          ' renseigner feuille résultat
          lir = 1
          shr.Columns(7).ClearContents
          For r = 0 To (c - 1)
              For st = 0 To 3
                  shr.Cells(lir + (6 * st), 7) = code(r)
              Next st
              lir = lir + (6 * st)
          Next r
          MsgBox "Les " & c - 1 & " codes sont reportées"
          End Sub 
          0
          1. Bonjour
            Tout d'abord, merci beaucoup de ta réponse elle fonctionne très bien. C'est génial!!!

            Cependant, je suis désolé mais je ne comprends absolument rien à ton code (je débute sur VBA, mais je souhaite vraiment progresser), peut tu me l'expliqué s'il te plait en quelques lignes?

            De plus je suis tellement perdu que je n'arrive pas à modifier ton code, pour que les données qui sont en colonne G, soit en colonne V.

            Ce sont mes dernières questions et ce sujet sera résolu.

            Merci, tu me rends un grand service.

            Dylan
            0