Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Static ToutAfficher As Boolean
Dim dercol&, i&
If Target.Address(0, 0) <> "C2" Then Exit Sub
Cancel = True: Application.ScreenUpdating = False
Columns.Hidden = False
If Not ToutAfficher Then
dercol = Cells(2, Columns.Count).End(xlToLeft).Column
For i = 5 To dercol Step 2: Columns(i - 1).Resize(, 2).Hidden = Cells(2, i) = 0: Next
End If
ToutAfficher = Not ToutAfficher
End Sub