Comment transformer des lignes multiples du même nom en 1 colonne

Résolu
dveroch Messages postés 31 Statut Membre -  
dveroch Messages postés 31 Statut Membre -
Bonjour à toutes et tous, voici ce que je souhaite faire:

Transformer ça :


en ça:


c'est un tableau d'exemple, mais le mien comporte plus de 5000 lignes.

Merci de votre aide

11 réponses

  1. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Bonjour,

    C'est vraiment écrit nom, prénom ?

    autrement
    {=index(colonne mélangée exemple a2:a5521);si(mod(ligne(colonne mélangée);2)=0;ligne($a$2:$a$5521)-1);lignes($1:1)))}
    C'est une formule matricielle, donc a valider par
    Maj+Ctrl+Entrée (les 3 doigts en même temps) pour faire apparaitre les accolades
    que tu descends
    et pour les prenoms
    {=index(colonne mélangée exemple a2:a5521);si(mod(ligne(colonne mélangée);2)=1;ligne($a$2:$a$5521)-1);lignes($1:1)))}

    Ça serait plus facile avec le fichier !!!
    0
    1. dveroch Messages postés 31 Statut Membre
       
      Je suis vraiment nul, mais je fais maj+ctrl+entrée et rien ne se passe ??
      0
  2. dveroch Messages postés 31 Statut Membre
     
    Bonjour merci pour votre réponse, en fait mon vrai tableau est sur 5000 ligne environ et a comme différents lignes noms de ligne :
    Nom, Sté, adresse, tel, mail

    Que voulez vous dire ce serai plus facile avec le fichier ? comment puis je faire, excusez mon ignorance
    0
  3. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour Dveroch, Djidji

    Djdi a raison, sinon il faut que l'on passe pas de temps à reconstituer une partie de ta feuille. de plus il n'est pas du tout sûr qu'on soit sur la m^me ligne et colonne de départ

    pour envoyer ton classeur (1000 ou 2000 lignes suffiront) mais une matricielle sera trop longue dans la durée et il faudra passer par de la prog VBA; à moins que Djidji ait une astuce de derrière les fagots...

    0
  4. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Bonjour,

    tu vas sur https://www.cjoint.com/ et tu reviens mettre le lien obtenu

    Crdlmt
    0
    1. dveroch Messages postés 31 Statut Membre
       
      Super merci beaucoup, j'y vais de ce pas...
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    Bonjour,

    un exemple:

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

    0
  7. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Bonjour,

    Avec le temps qu'il fait, je n'ai plus de fagots !
    Et c'est vrai que c'est long en matricielle (entre 10 et 15 secondes)

    Crdlmt
    0
  8. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour tout le monde

    dveroch:
    Compte tenu du nombre important de lignes, je te propose une méthode d'action rapide en travaillant hors écran en mémoire RAM
    https://mon-partage.fr/f/xwsRK9Sh/

    si tu n'as jamais fait de macros, fais signe
    0
    1. dveroch Messages postés 31 Statut Membre
       
      Bonjour Michel, c'est juste génial c'est excatement cella qu'il me faut, par contre en effet, je suis plutôt novice et je suis incapable de faire ça sans aide
      0
  9. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    Re à tous
    Je l'ai refait,sans matricielles (j'aime bien, dans le principe), 1,5s pour 3000 lignes, c'est supportable !

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

    Crdlmt
    0
  10. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour Djidji
    Re Dveroh

    heu... génial, n' exagérons pas !!! :o)
    c'est plutôt vieux routier !

    Pour djidji

    sur tes 3000 lignes j'ai cette mesure


    en utilisant en début de macro
    Dim Start As Single
    Start = Timer
    et en fin
    Application.ScreenUpdating = True
    MsgBox Timer - Start & " secondes"

    mais j'ai pas compris ta phrase
    je l'ai refait,sans matricielles (j'aime bien, dans le principe)
    ???
    cordialement

    0
    1. dveroch Messages postés 31 Statut Membre
       
      Merci Michel, mais pour moi c'est du chinois, voire du marsien, que dois faire avec tout ça???
      0
    2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      C'est à dire ?
      0
    3. dveroch Messages postés 31 Statut Membre
       
      En fait je ne sais pas comment je fais une macro, je suis novice
      0
    4. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
       
      comment installer les macros et les déclencher

      Activer les macros:
      rond office- -options Excel
      1/standard
      cocher " onglet développeur dans ruban "
      2/gestion confidentialité- paramètres centre gestion-confidentialité
      Activer toutes les macros (il n'y a peu de risques en 2014...)

      installer la macro

      1/faire un copier de la macro
      Alt+F11
      Insertion -module
      Coller la macro

      2/Dans la feuille concernée
      ruban développeur
      mode création
      contrôle formulaire- bouton
      Affecter à la macro
      0
    5. dveroch Messages postés 31 Statut Membre
       
      Merci beaucoup Michel, je vais essayer
      0
  11. DjiDji59430 Messages postés 4278 Date d'inscription   Statut Membre Dernière intervention   717
     
    PourMichel
    Ça voulait dire que, au lieu de chercher quelque chose de simple, je pense tout de suite "Matricielle". parce que j'aime bien ces formules, fussent-elles longues a exécuter

    Crdlmt
    0