Transpositions de lignes en colonnes par groupes de 4

Résolu
lucabxl Messages postés 11 Statut Membre -  
lucabxl Messages postés 11 Statut Membre -
Bonjour,
Je ne suis pas un foudre de guerre en excel et bute sur un problème.
J'ai un long tableau (milliers de références) constitué de données ordonnées sur des lignes comme suit, quatre lignes à chaque fois:

A1 Jean
A2 Route de Paris
A3 1000 St truc
A4 Belgique
A5 Paul
A6 Route de Bruxelles
A7 2000 Strof les bains
A8 France
Etc
Pour une raison x j'ai le besoin de présenter les valeurs sur un nouveau TAB sous forme de tableau dans des colonnes comme ceci
A1 Noms B1 Rue C1 Ville D1 Pays
A2 Jean B2 Route de Paris C2 1000 St Truc D2 Belgique
A3 Paul B3 Route de Bruxelles C3 2000 Strof les bains D3 France

Comme il y a des milliers de références je ne peux pas simplement transposer en copier/coller chaque groupe de quatre lignes manuellement.
Une macro devrait pouvoir gérer une boucle pour la copie transposée mais je ne connais pas cette programmation. Quelqu'un a-t-il déjà rencontré ce cas?

Merci d'avance.

4 réponses

  1. Vaucluse Messages postés 27336 Date d'inscription   Statut Contributeur Dernière intervention   6 453
     
    Bonsoir

    voyez cette option par formule
    https://www.cjoint.com/c/EKCrzQUKNz5

    la formule est ajustée pour:
    __une liste de données qui débute en A1
    __un tableau de résultats qui débute en C1valeur

    ensuite faire un copier/collage spécial valeur pour supprimer les formules

    crdlmnt
    0
    1. lucabxl Messages postés 11 Statut Membre
       
      Bonjour, merci pour la proposition
      Je vais étudier la structure de cette fonction qui devrait faire l'affaire moyennant ajustements. Ma définition ne devait pas être idéale car votre exemple ne répond pas au besoin.
      Par rapport à votre tableau, je souhaitais tous les noms dans la même colonne, toutes les rues dans la même colonne, tous les pays dans la même colonne... soit A5 en C2, A9 en C3 etc.
      0
    2. lucabxl Messages postés 11 Statut Membre
       
      Bonjour Vaucluse,
      La macro de Maurice est fonctionnelle et répond à mon besoin. Donc c'est résolu, mais je suis certain que votre formule devait être utilisable également.
      Bon dimanche. Luca
      0
  2. Maurice
     
    Bonjour
    Voila un exemple en vba
    Sub Macro1()
    Nlig = Range("A" & Rows.Count).End(xlUp).Row
    I = 1
       For L = 1 To Nlig Step 4
          Range("A" & L & ":A" & L + 3).Copy
          Feuil3.Range("A" & I).PasteSpecial xlPasteValues, , , True
          I = I + 1
       Next
    Application.CutCopyMode = False
    End Sub
    

    A+
    Maurice
    0
    1. lucabxl Messages postés 11 Statut Membre
       
      Hello Maurice,
      C'est exactement çà. Vous me tirez une belle épine du pied. Maintenant à moi de comprendre l'utilisation de ce & et des , , , histoire de pas mourir idiot :-)
      Merci à tous et bon dimanche
      0
  3. yclik Messages postés 3874 Date d'inscription   Statut Membre Dernière intervention   1 609
     
    bonsoir
    une piste à tester

    ici

    Voir la fonction INDIRECT sur Excel (car réalisé avec OpenOffice)
    0
  4. lucabxl Messages postés 11 Statut Membre
     
    Merci à tous pour vos propositions, de bonnes pistes et nouveautés pour moi. Je fais le test et vous confirmerai.
    Bon dimanche
    0