1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| Sub test()
Dim C As Range, Tabl, Plage As Range, Ligne As Long
'on travaille avec la feuille "Feuil1"
With Sheets("Feuil1")
'on affecte à la variable "Plage" les cellules de la colonne A remplies
'si tu ne comprendds pas cette ligne, dis-le
Set Plage = .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
End With
'on travaille avec la feuille "Feuil2" et avec "Plage" définie préccédemment
With Sheets("Feuil2")
'on boucle sur les cellules de Plage
For Each C In Plage
'"Split" renvoie un tableau de la cellule de la colonne K
'tronçonnée en autant de morceaux qu'il y a de ","
Tabl = Split(C.Offset(, 10), ";")
'on traite chaque morceau, du premier au dernier
.[A:C].NumberFormat = "@"
For i = 0 To UBound(Tabl)
Ligne = Ligne + 1
.Range(.Cells(Ligne, 1), .Cells(Ligne, 10)).Value = C.Resize(, 10).Value
.Cells(Ligne, 11) = Tabl(i)
Next i
Next
.[K:K].EntireColumn.AutoFit
End With
End Sub |
Partager