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 27 28
| Option Explicit
Sub ajout_ligne()
Dim oRng As Range
Dim i As Long
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
With Worksheets("Test 1")
Set oRng = .Range("C1")
For i = .Cells(Rows.Count, 3).End(xlUp).Row To 1 Step -1
If Left(oRng.Offset(i, 0), 2) = "AC" Then
.Rows(i + 2 & ":" & i + 2).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
oRng.Offset(i + 1, 0) = oRng.Offset(i, 0)
oRng.Offset(i + 1, 2) = oRng.Offset(i, 2)
If Left(oRng.Offset(i, 6), 2) = "AL" Then
oRng.Offset(i + 1, 6) = oRng.Offset(i, 6)
oRng.Offset(i + 1, 7) = oRng.Offset(i, 7)
End If
End If
Next i
End With
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub |
Partager