Option Explicit
Private Sub ComboBox1_Change()
afficherMasquer
End Sub
Private Sub ComboBox2_Change()
afficherMasquer
End Sub
Sub afficherMasquer()
Dim refA1, refA2, ref, x, cell
Application.ScreenUpdating = False
With ActiveSheet
.Range("c7:bz7").EntireColumn.Hidden = False
refA1 = .Range("a1"): If refA1 = "Toutes les communes" Then refA1 = "*"
refA2 = .Range("a2"): If refA2 = "Toutes" Then refA2 = "*"
If refA1 = "*" And refA2 = "*" Then Exit Sub
ref = refA1 & Chr(1) & refA2
For Each cell In .Range("c7:bz7")
x = cell & Chr(1) & cell.Offset(-1)
cell.EntireColumn.Hidden = Not (x Like ref)
Next cell
End With
End Sub