Bonjour,
Une autre piste, pour l'exemple, en C5 une liste de validation avec les noms de tes macros et dans le module de la feuille :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) <> "C5" Then Exit Sub
Application.Run Target.Value
End Sub