Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim r As Range, fusion As Range
If Target.Address = "$B$2" Then
Set r = Intersect([B:B], Me.UsedRange)
If r Is Nothing Then Exit Sub 'sécurité
For Each r In r
Set r = r.MergeArea
If r.Count > 1 Then _
Set fusion = Union(r, IIf(fusion Is Nothing, r, fusion))
Next
If fusion Is Nothing Then Exit Sub
fusion.Name = "ZoneFusion" 'nom défini pour mémoriser
fusion.UnMerge
fusion.HorizontalAlignment = xlCenterAcrossSelection
ElseIf Not IsError([ZoneFusion]) Then
[ZoneFusion].Merge
ThisWorkbook.Names("ZoneFusion").Delete
End If
End Sub