1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| Sub test()
AjusteColonnes Feuil2.Rows(1), Array("Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre")
End Sub
Sub AjusteColonnes(MesTitres As Range, Attendus As Variant)
Dim I As Long
Dim J As Long
J = MesTitres.Cells(MesTitres.Columns.Count).End(xlToLeft).Column 'dernière colonne
For I = UBound(Attendus) To 0 Step -1 'on balaie tous les attendus à partir de la fin (à cause des insert...)
If MesTitres.Cells(J) = Attendus(I) Then
' tout va bien, on passe à la colonne précédente
J = J - 1
Else
' il faut insérer (après la colonne courante)
MesTitres.Cells(J + 1).EntireColumn.Insert
MesTitres.Cells(J + 1).Value = Attendus(I)
' et on enchaine
End If
Next I
End Sub |
Partager