Convertir plusieurs lignes du même intitulé en une colonne
dveroch
Messages postés
24
Date d'inscription
Statut
Membre
Dernière intervention
-
dveroch Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
dveroch Messages postés 24 Date d'inscription Statut Membre Dernière intervention -
Bonjour à toutes et tous, voici ma problématique, j'ai un tableau excel comme ci-dessous:

Plusieurs lignes sont nommés "nom", comment puis-je transformer ces lignes en une seule colonne ou j'aurai tous les noms en dessous. et ainsi de suite pour les autres lignes qui portent également le même intitulé : adresse, tel, sté etc....
J'espère avoir été clair dans les explications et vous remercie beaucoup pour votre aide

Plusieurs lignes sont nommés "nom", comment puis-je transformer ces lignes en une seule colonne ou j'aurai tous les noms en dessous. et ainsi de suite pour les autres lignes qui portent également le même intitulé : adresse, tel, sté etc....
J'espère avoir été clair dans les explications et vous remercie beaucoup pour votre aide
A voir également:
- Convertir plusieurs lignes du même intitulé en une colonne
- Déplacer une colonne excel - Guide
- Trier une colonne excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Formule moyenne excel plusieurs colonnes - Guide
- Colonne word - Guide
7 réponses
Bonjour,
Tu souhaites créer un tableau à partir de ta base dans une nouvelle feuille de ton classeur?
Si oui, comment s'appelle cette feuille? Dans quelles colonnes sont contenues tes informations? Est-ce qu'une macro conviendrait?
Bonne journée
Jc
Tu souhaites créer un tableau à partir de ta base dans une nouvelle feuille de ton classeur?
Si oui, comment s'appelle cette feuille? Dans quelles colonnes sont contenues tes informations? Est-ce qu'une macro conviendrait?
Bonne journée
Jc
En fait voici ce que je souhaite faire de façon peut être plus claire, le tableau ci-dessus est juste une petite partie de mon tableau qui comporte plus de 5000 ligne, toujours dans le même ordre: nom, formation, sté, adresse, cp ville, tel, mail.
Voilà ce que je souhaiterai faire avec ce tableau par rapport à mon tableau ci-dessus :

Voilà ce que je souhaiterai faire avec ce tableau par rapport à mon tableau ci-dessus :

peut importe la manière de faire, dans une nouvelle feuille ou pas, tout ce que je recherche c'est la transformation ci-dessus afin que je puisse exploiter mes données.
Un grand merci de votre aide
Un grand merci de votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Voici un code de macro qui devrait transposer tes informations lister sous forme de tableau.
A copier dans un module, mettre a jour les noms des feuilles, puis tester.
NB : fonctionnera si les information sont contenues dans les colonnes A et B de ta liste, sinon mettre à jour le code
Bonne fin de journée
Jc
Voici un code de macro qui devrait transposer tes informations lister sous forme de tableau.
A copier dans un module, mettre a jour les noms des feuilles, puis tester.
NB : fonctionnera si les information sont contenues dans les colonnes A et B de ta liste, sinon mettre à jour le code
Sub contact() 'créer tableau à partir de la liste de contact Dim list As Object, cont As Object Set list = Worksheets("liste") '<<< "liste" à remplacer par le nom de la feuille qui contient la liste à transposer en tableau Set cont = Worksheets("contact") '<<< "contact" a remplacer par le nom de la feuille ou tu souhaite créer le tableau de contact 'suppression de l'ancien tableau cont.Range("A1:XV" & cont.Range("A65536").End(xlUp).Row).ClearContents 'création des titres de colonnes col = 0 For i = 1 To list.Range("A65536").End(xlUp).Row If WorksheetFunction.CountIf(list.Range("A1:A" & i), list.Range("A" & i).Value) = 1 Then col = col + 1 cont.Cells(1, col) = list.Range("A" & i).Value End If Next i 'ajout des infos For j = 1 To list.Range("B65536").End(xlUp).Row If list.Range("B" & j) <> "" Then lib = list.Range("A" & j).Value For k = 1 To cont.Range("XV1").End(xlToLeft).Column If cont.Cells(1, k) = lib Then c = k End If Next k If c <> 1 Then cont.Cells(cont.Range("A65536").End(xlUp).Row, c) = list.Range("B" & j).Value Else cont.Cells(cont.Range("A65536").End(xlUp).Row + 1, c) = list.Range("B" & j).Value End If End If Next j End Sub
Bonne fin de journée
Jc