Dim n As Byte, P As Range, C As Range
Private Sub CommandButton1_Click()
For n = 0 To 2
Set P = Array([Plage1], [Plage2], [Plage3])(n)
'macro commune, ici
For Each C In P: C(1, 2) = Left(C, 1): Next
Next
End Sub
Private Sub CommandButton2_Click()
For n = 0 To 2
Set P = Array([Plage1], [Plage2], [Plage3])(n)
'macro commune, ailleurs
défait
Next
End Sub
Sub défait()
For Each C In P: C(1, 2) = "": Next
MsgBox "et " & n + 1
End Sub