L'algo de cette macro se passe en 3 temps :
- temps 1 : on recherche la dernière ligne utilisée du tableau (nL) :
nL = Sheets("Feuil1").UsedRange.SpecialCells(xlCellTypeLastCell).Row
- temps 2 : on remplit les catégories implicites dans la colonne A pour les rendre explicites.
For i = 2 To nL
If Cells(i, 1) <> "" Then
categorie = Cells(i, 1)
compt = i + 1
While Cells(compt, 1) = "" And compt <= nL
Cells(compt, 1) = categorie
compt = compt + 1
Wend
End If
Next i
- temps 3 : on supprime les lignes contenant au départ uniquement le nom de la catégorie, on n'en a plus besoin.
For i = 2 To nL
If Cells(i, 2) = "" Then
Rows(i & ":" & i).Select
Selection.Delete Shift:=xlUp
End If
Next i
Il ne reste plus que les associations Catégorie (colonne A) - Article (colonne B)