Lancer macro à Chaque incrémentation d'une cellule

Bonjour, comment pourrais je faire pour lancer des macrosà chaque incrémentation d'une cellule?

Exemple:

A1 s'incrémente de 1, lancer la macro 1

A1 s'incrémente de 2, lancer la macro 2

A1 s'incrémente de 3, lancer la macro 3

Merci

Bonjour

A placer dans la feuille VBA de la feuille concernée :

Option Explicit

Dim v1, v2

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
    If Target.Address = "$A$1" Then
        v2 = Target
        Application.Undo
        v1 = ActiveCell
        If v2 - v1 = 1 Then
            Call Macro1
        ElseIf v2 - v1 = 2 Then
            Call Macro2
        ElseIf v2 - v1 = 3 Then
            Call Macro3
        End If
    End If
    Application.EnableEvents = True
End Sub

Sub Macro1()
    MsgBox "Vous avez incrémenté A1 de 1."
End Sub

Sub Macro2()
    MsgBox "Vous avez incrémenté A1 de 2."
End Sub

Sub Macro3()
    MsgBox "Vous avez incrémenté A1 de 3."
End Sub

Bye !

Bonjour,

Ci-dessous, un exemple à adapter.

C'est une procédure évènementielle qui va se produire à chaque modification de A1.

Il y a une variable publique bAllow pour autoriser ou ne pas autoriser la procédure à s'exécuter.

Il faut penser à l'initialisation de A1.

Cdlt.

Option Explicit
Public bAllow As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
Dim oldValue, newValue

    If Target.Address = "$A$1" And bAllow = True Then

        On Error GoTo err_Handler

        Application.EnableEvents = False

        newValue = Target.Value
        Application.Undo
        oldValue = Target.Value

        Select Case newValue - oldValue
            Case 1
                MsgBox "+1"
            Case 2
                MsgBox "+2"
            Case 3
                MsgBox "+3"
            Case Else
                '
        End Select

    End If

exit_Handler:
    Target.Value = newValue
    Application.EnableEvents = True
    Exit Sub

err_Handler:
    MsgBox "Erreur : " & Err.Number & " - " & Err.Description
    Resume exit_Handler

End Sub

Bonjour merci pour vos réponse, je mets un fichier çela sera plus simple.

Merci

46classeur1.xlsm (17.37 Ko)

Bonjour, personne a une petite idée?

Rechercher des sujets similaires à "lancer macro chaque incrementation"