Public Sub UpdateHiddenRows()
Dim ws As Worksheet
Dim lastRow As Long
Dim i As Long
Application.EnableEvents = False
Application.ScreenUpdating = False
On Error GoTo ErrorHandler
Set ws = ThisWorkbook.Worksheets("Analyse Impacts")
lastRow = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row
For i = lastRow To 1 Step -1
If ws.Cells(i, 1).Value = "Y" Then
ws.Rows(i).Hidden = True
Else
ws.Rows(i).Hidden = False
End If
Next i
For i = 1 To lastRow - 2
If ws.Cells(i, 2).Value = "Achats" And _
ws.Cells(i, 4).Value = "Impact sur coût Matière Première / Service ?" And _
ws.Cells(i, 5).Value = "oui" Then
ws.Rows(i + 1).Hidden = False
ws.Rows(i + 2).Hidden = False
End If
Next i
ErrorHandler:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub