Code vba sur un bouton

Bonjour,
J'aimerais savoir s'il est possible d'affecter un code Private Sub à un bouton ActivX afin que l'opération soit valider par ce bouton .
Merci pour votre aide
Crdlt

Configuration: Windows / Firefox 72.0


--
Commence par faire le nécessaire ,puis fait ce qu'il est possible de faire et tu réaliseras l'impossible sans t'en apercevoir. Saint François d'Assise

2 réponses

  1. Bonjour,

    Tu dessines ton bouton puis tu double cliques dessus, la procédure sur l'évènement Click est créée automatiquement soit dans le module de la Feuille correspondante, soit dans le module de l'userform (selon le cas)
    1. Bonjour Patrice
      Merci pour ton aide
      Cette procédure je sais faire quand il y a une macro
      Mais avec un code du genre

      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Dim Derligne As Long


      c'est là ou ça se complique
      Crdlt
    2. @JCB40Développes, c'est quoi la difficulté ?

      Exemple :
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Target.Column = 2 Then
          Call MaMacro
        End If
      End Sub
      Private Sub CommandButton1_Click()
        Call MaMacro
      End Sub
      Private Sub MaMacro()
        MsgBox "Bonjour JCB40"
      End Sub
    3. @Patrice33740Exemple avec ce code comment le déclencher avec un bouton
      Crdlt

      Private Sub Worksheet_Change(ByVal c As Range)
      If Range("A1") > 2 Then Exit Sub
      If Range("A1") <> "" And Range("A1") = "1" Or Range("A1") = "2" Then
      If Range("A1") = "1" Then Range("A1") = "Hospi"
      Range("A1").Select
      If Range("A1") = "2" Then Range("A1") = "Med"
      End If
    4. @JCB40Exactement pareil que ce que je t'ai déjà écrit !

      c-à-d :
      Private Sub Worksheet_SelectionChange(ByVal Target As Range)
          Call MaMacro
      End Sub
      Private Sub CommandButton1_Click()
        Call MaMacro
      End Sub
      Private Sub MaMacro()
        If Range("A1") > 2 Then Exit Sub
        If Range("A1") <> "" And Range("A1") = "1" Or Range("A1") = "2" Then
          If Range("A1") = "1" Then Range("A1") = "Hospi"
          Range("A1").Select
          If Range("A1") = "2" Then Range("A1") = "Med" 
        End If
      End Sub