Se connecter avec
S'enregistrer | Connectez-vous

Lancer macro VBA à louverture dune feuille Excel

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte
Expert Programmation

Salut,

Une feuille Excel, ça ne s'ouvre pas. Aussi, je ne peux pas répondre exactement à ta question.

Un classeur Excel, ça s'ouvre. C'est donc la méthode Open de l'objet ThisWorkbook qu'il te faut implémenter.

Si c'est vraiment au niveau de la feuille que tu veux déclencher ton événement, jette un oeil à l'événement Activate de Worksheet.

Merci pour ta réponse.
J'ai partiellement résolu mon problème en utilisant la procédure [Worksheet_Change(ByVal Target As Excel.Range).
Mais une autre difficulté se présente.
J'ai mis en place un timer qui se lance dès que le contrôle parvient sur une cellule donnée de la feuille de calcul et qui s'arrête lorsqu'une valeur convenable est saisie dans cette même cellule. Malheureusement le timer s'arrête aussi lorsqu'un chiffre est placé dans la cellule avant même d'avoir appuyé sur la touche ENTER. C'est ennuyeux car si l'on doit saisir un nombre de plusieurs chiffres le timer s'arrête dès la mise en place du premier d'entre eux.

MonTimer est programmé pour la cellule B3 de la Feuil1 et on peut s'assurer qu'il marche en l'activan/désactivant par Click sur le ToggleButton1 :

Public Sub MonTimer()
Temps = Now + TimeValue("00:00:01")
Application.OnTime Temps, "MonTimer"
Sheets("Feuil1").Range("B3").Value = Durée
Durée = Durée + TimeValue("00:00:01")
End Sub

Public Sub StopMonTimer()
On Error Resume Next
Application.OnTime Temps, "MonTimer", , False
End Sub

Private Sub ToggleButton1_Click()
If ToggleButton1 Then
Durée = 0
Call MonTimer
Else
Call StopMonTimer
End If
End Sub

On peut voir que le timer s'arrête dès qu'un chiffre est placé dans une quelconque cellule de la feuille Feuil1
Je n'ai pas encore trouvé de remède à ce problème qui survient également si mon timer et lancé par un bouton poussoir.

Bravo à celui qui trouvera la solution et merci d'avance
Lassé par la pub ? Créez un compte