Bonjour,
Essaie :
Sub Cacher()
Dim cellule As Range
Dim i As Integer
Dim Cel As Range
Dim Masquer As Boolean
Application.ScreenUpdating = False
With Sheets("plan")
For Each cellule In .Range("A1:A90")
If Application.CountIf(.Range(.Cells(cellule.Row, 1), .Cells(cellule.Row, "GI")), "><") = 0 Then
cellule.EntireRow.Hidden = True
End If
Next cellule
Application.ScreenUpdating = False
Columns("A:GI").Columns.Hidden = False
For i = 1 To 191
Masquer = True
For Each Cel In Cells(1, i).Resize(200).SpecialCells(xlCellTypeVisible)
If Val(Cel.Value) > 0 Then
Masquer = False
Exit For
End If
Next Cel
If Masquer Then Columns(i).Hidden = True
Next i
End With
Application.ScreenUpdating = True
End Sub
Daniel