Bonjour,
j'ai 2 colonnes avec x lignes, dans COL1 j'ai des matricules classés dans l'ordre, dans COL2 en face du matricule une lettre. Je souhaiterais que lorsque le matricule est égale au matricule suivant que les lettres correspondantes qui sont donc l'une en dessous de l'autre dans la COL2, soient transposées chacune dans les colonnes à côté mais en ligne.
exemple:
COL 1 COL2
12 a
13 d
13 s
15 z
15 k
15 z
16 p
après transposition
COL1 COL2 COL3 COL4
12 a
13 d s
13 s
15 z k u
15 k
15 u
16 p
l'ordre dans les colonnes 3 à 4 n'a pas d'importance
le test ci dessous n'est pas concluant
Merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Sub Transposer() Dim x As Integer For x = 1 To 100 If Cells(x, 1) = Cells(x + 1, 1) Then Range(Cells(x, 2), Cells(x + 1, 2)).Copy Cells(x, 3).Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=True End If Next x End Sub
Partager