Bonjour à tous,
J'essaye d’effectuer une macro en regardant les différents post mais je coince...
J'ai une base de données et j'aimerai insérer une ligne dès que la catégorie de personnel change, insérer une ligne dès que la nature du contrat change et insérer une ligne dès que le motif de CDD change.
J'aimerai faire cela pour tout le classeur.
Voici le début de la macro :
Sub InsertLignes()
ActiveWorkbook.Worksheets("Jardins Brunehaut").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Jardins Brunehaut").Sort.SortFields.Add Key:=Range("E2:E222"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Jardins Brunehaut").Sort.SortFields.Add Key:=Range("F2:F222"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
ActiveWorkbook.Worksheets("Jardins Brunehaut").Sort.SortFields.Add Key:=Range("G2:G222"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Jardins Brunehaut").Sort
.SetRange Range("A1:T222")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Dim Lg As Long, i As Long
Lg = Range("A65536").End(xlUp).Row
Application.CutCopyMode = False
For i = Lg To 2 Step -1
If Range("e1" & i - 1) <> Range("e1" & i) Then
Range(Range("e1" & i), Range("e1" & i + 1)).EntireRow.Insert
End If
Next i
end sub
Merci d'avance,