Excel, transférer données de colonne en ligne
Milou
-
Milou -
Milou -
Bonjour,
Je souhaiterais savoir si avec le logiciel Excel (ou access), il est possible de déplacer, selon certains critères, des cellules rangées en colonnes et de les placer en ligne,
Exemple
Tableau d'origine
N°........Nom.........Unite.........Prix
1.........Dupont......5..............10
2.........TOTO........6..............15
2.........TOTO........1..............10
3.........TINTIN.......3..............20
3.........TINTIN.......2..............15
3.........TINTIN.......4..............10
Pour obetnir, automatiquement le tableau sous cette forme :
N°........Nom..............Unite........Prix............Unite.....Prix...........Unite.....Prix
1........Dupont..............5...........10
2.........TOTO...............6...........15...............1.........10
3.........TINTIN.............3............20..............2.........15.............4.........10
Je vous remercie par avance de votre aide
Je souhaiterais savoir si avec le logiciel Excel (ou access), il est possible de déplacer, selon certains critères, des cellules rangées en colonnes et de les placer en ligne,
Exemple
Tableau d'origine
N°........Nom.........Unite.........Prix
1.........Dupont......5..............10
2.........TOTO........6..............15
2.........TOTO........1..............10
3.........TINTIN.......3..............20
3.........TINTIN.......2..............15
3.........TINTIN.......4..............10
Pour obetnir, automatiquement le tableau sous cette forme :
N°........Nom..............Unite........Prix............Unite.....Prix...........Unite.....Prix
1........Dupont..............5...........10
2.........TOTO...............6...........15...............1.........10
3.........TINTIN.............3............20..............2.........15.............4.........10
Je vous remercie par avance de votre aide
4 réponses
-
Bonjour,
Une proposition par macro :Sub rassemble() Dim lig As Long For lig = [A65536].End(xlUp).Row To 2 Step -1 If Cells(lig, 1) = Cells(lig - 1, 1) Then Cells(lig, 3).Resize(1, Cells(lig, 1).End(xlToRight)).Copy Destination:=Cells(lig - 1, 1).End(xlToRight).Offset(0, 1) Rows(lig).EntireRow.Delete End If Next lig End Sub
Classeur1.xls
eric -
Bonjour,
C'est faisable mais un peu complexe sur Excel car il faut faire une feuille séparée sur laquelle vous travaillerez les données avec les formules de RechercheV et RechercheH avec des SI imbriqués. Mais attention,le nombre de SI imbriqué est limité à 7.
C'est probablement plus facile sur Access si vous arrivez à définir clairement les noms de vos colonnes de la seconde présentation par rapport au nom des lignes de la première. deplus vosu devrez limiter le nombre de ligne ayant le premier identifiant identique (<10 par ex.)
A+ -
bonjour tous, salut Eric
et une par tableau et formules, moins complexe peut être qu'on pourrait le croire
http://www.cijoint.fr/cjlink.php?file=cj201009/cijqhmX1kP.xls
crdlmnt -
Je vous remercie beaucoup pour vos réponses.
Je vais me concentrer dessus pour les adapter à mon fichier,
Salutations