Private Sub Worksheet_Change(ByVal Target As Range)
ThisWorkbook.RefreshAll 'actualise le TCD
Dim c As Range
With Sheets("Feuil2").[A3].CurrentRegion
For Each c In .Rows(.Rows.Count).Cells 'ligne du Total général
c.EntireColumn.Hidden = c = 0
Next
End With
End Sub