Dim dat, tablo, I&
dat = [F3]
With Sheets("inv.jour")
tablo = .Range("A1", .UsedRange).Resize(, 6) 'matrice, plus rapide
For I = 1 To UBound(tablo) - 2
If tablo(I, 6) = dat And tablo(I + 2, 1) = "Mois" Then Exit For
Next
If I = UBound(tablo) - 1 Then MsgBox "Date non trouvée !", 48: Exit Sub
.Cells(I + 2, 1).CurrentRegion.EntireRow.Delete 'RAZ
.Rows(I + 2).Resize([A5].CurrentRegion.Rows.Count).Insert 'insère des lignes vides
[A5].CurrentRegion.EntireRow.Copy .Rows(I + 2) 'copier-coller
.Visible = xlSheetVisible 'au cas où...
Application.Goto .Cells(I, 1), True 'cadrage
.Cells(I, 6).Select
End With
MsgBox "Modification effectuée", vbCritical