Sub masquerlignevides() Dim plage As Range Set plage = Application.InputBox(prompt:=" choisi la plage que tu veux masque", Type:=8) For Each lign In plage.Rows tousvides = True For Each cell In lign.Cells If Not (IsEmpty(cell)) Then tousvides = False: Exit For Next cell If tousvides Then rep = MsgBox(prompt:="tu veux le masquer ligne " & lign.Row, Buttons:=vbOKCancel + vbQuestion) If rep = vbOK Then lign.RowHeight = 0 End If Next lign End Sub