Recalcul (instruction Excel 7) remplaçé par Recalculate, ne fonctionne pas

Bonjour,

Sub Auto_Open()

Application.WhenRecalculate = "Alarme"

End Sub

Sub Alarme()
If Sheets("Résultats").Cells(2, 3) > 100 Then
For Sound = 1 To 3
Bip
For Delay = 1 To 200000
Next Delay
Next Sound
End If
End Sub

Cette macro ne fonctionne pas, j'ai du faire une erreur qq part.

Bonjour

A tester

Sub Auto_Open()
    ' Assurez-vous que l'événement est correctement configuré
    Application.OnTime Now + TimeValue("00:00:01"), "Alarme"
End Sub

Sub Alarme()
    If Sheets("Résultats").Cells(2, 3) > 100 Then
        For Sound = 1 To 3
            Beep ' Utilisez Beep pour émettre un son
            For Delay = 1 To 200000
                ' Boucle vide pour créer un délai
            Next Delay
        Next Sound
    End If
End Sub

Si cela convient passer le sujet en résolu

Crdlt

For Sound = 1 To 3

(Variable non définie)

a tester

Sub Auto_Open()
    ' Assurez-vous que l'événement est correctement configuré
    Application.OnTime Now + TimeValue("00:00:01"), "Alarme"
End Sub

Sub Alarme()
    If Sheets("Résultats").Cells(2, 3) > 100 Then
        Dim Sound As Integer
        Dim Delay As Long

        For Sound = 1 To 3
            Beep ' Utilisez Beep pour émettre un son
            For Delay = 1 To 200000
                ' Boucle vide pour créer un délai
            Next Delay
        Next Sound
    End If
End Sub

J'entre la valeur 120 (donc je dépasse la valeur 100), et je n'entends pas de Beep

regarde ce fichier voir les codes

8classeur1.xlsm (14.81 Ko)

je n'arrive pas à ouvrir le fichier parce que je suis sous Excel 2003

essaie de mettre ce code dans ta feuille "Résultats" en faisant alt+F11

j'ai fais l'essai chez moi j'ai 5 bips quand je change la valeur de C2

Sub Auto_Open()
    Application.OnTime Now + TimeValue("00:00:01"), "Alarme"
End Sub

Sub Alarme()
    If Sheets("Résultats").Cells(2, 3) > 100 Then
        Dim Sound As Integer

        For Sound = 1 To 5
            Beep
            Application.Wait Now + TimeValue("00:00:01") ' Délai d'une seconde
        Next Sound
    Else
        MsgBox "La valeur dans C2 est inférieure ou égale à 100."
    End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
'Alarme
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Alarme
End Sub

Super, ça fonctionne, par contre le message la valeur est inférieure ou égale à 100, revient à chaque fois qu'on clique qq part dans la feuille, indéfiniment.

A tester remplacer le code par celui ci

Sub Auto_Open()
    Application.OnTime Now + TimeValue("00:00:01"), "Alarme"
End Sub

Sub Alarme()
    If Sheets("Résultats").Cells(2, 3) > 100 Then
        Dim Sound As Integer

        For Sound = 1 To 5
            Beep
            Application.Wait Now + TimeValue("00:00:01") ' Délai d'une seconde
        Next Sound
    Else
        MsgBox "La valeur dans C2 est inférieure ou égale à 100."
    End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not Intersect(Target, Me.Range("C2")) Is Nothing Then
        Alarme
    End If
End Sub

ça fonctionne ! merci beaucoup, bonne soirée.

Bonjour

Merci pour le retour pensez à passer le sujet en résolu

Crdlt

Rechercher des sujets similaires à "recalcul instruction remplace recalculate fonctionne pas"