Remplissage en temps et en heure

Résolu
ouistitlilie Messages postés 16 Statut Membre -  
aquarelle Messages postés 7181 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

Dans le cadre de mon stage, je cherche à créer une macro qui me permettrait de faire ceci :

Lorsque la cellule A2 est vide, 2h après le remplissage de la cellule A1, afficher un message disant "attention, vous n'avez pas répondu".

Est-ce possible?

Je pensais créer un fichier avec au moins 4 colonnes : DATE, HEURE, CLIENT, REPONSE.
Lorsqu'on reçoit une demande, on remplit les colonnes DATE, HEURE, CLIENT
Puis on a 2h pour remplir la case REPONSE, avant que le message disant "attention, vous n'avez pas répondu" s'affiche.

Qu'en pensez-vous?

Merci d'avance!

2 réponses

  1. papou
     
    Bonsoir ouistitlilie,

    Voici une façon de procéder :

    Dans le module de code de ta feuille, tu copies le code suivant :

    Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Target.Address = "$A$1" Then Exit Sub
    If Range("A1") <> "" And Range("A2") = "" Then Chrono
    End Sub
    Sub Chrono()
    Hdeb = Now
    Application.OnTime Now + TimeValue("00:00:05"), "Message"
    End Sub

    Puis dans un module standard :

    Sub Message()
    MsgBox "Attention, vous n'avez pas répondu !", vbOKOnly + vbExclamation, "DÉLAI DÉPASSÉ"
    End Sub

    Pour que tu puisses tester, j'ai réglé le délai à 5 secondes. Pour ton application finale, tu remplaceras "00:00:05" par "02:00:00".

    Espérant avoir répondu.

    Cordialement.
    1
    1. Ouistitlilie
       
      Bonjour Papou, et merci de ta réponse qui m'aide beaucoup!
      Cependant, je suis novice avec VBA. Pourrais-tu rajouter des commentaires pour chaque ligne afin que je puisse comprendre à quoi elles servent et réussir à les mettre dans mon programme?

      Cordialement
      0
  2. aquarelle Messages postés 7181 Date d'inscription   Statut Modérateur Dernière intervention   1 311
     
    Bonsoir ouistitlilie,

    Voici un exemple, un peu adapté, de l'utilisation de la macro de papou avec quelques explications, en commentaires afin que tu puisses mieux comprendre :
    http://cjoint.com/12jn/BFgtcyOvkpC.htm

    Bonne soirée
    0
    1. ouistitlilie Messages postés 16 Statut Membre
       
      Merci c'est super je comprends mieux comment l'utiliser sur mon fichier.
      Une dernière question : la première ligne "Private Sub Worksheet_Change(ByVal Target As Range)"
      J'ai toujours commencé mes macros par "Sub XXX()"
      Pas de "private" avant ni d'écritures entre parenthèses.
      peux-tu me dire à quoi ça sert?
      0
    2. ouistitlilie Messages postés 16 Statut Membre
       
      D'accord! Merci beaucoup pour ces explications, je vais essayer de les mettre en oeuvre!
      Bonne soirée
      0
    3. aquarelle Messages postés 7181 Date d'inscription   Statut Modérateur Dernière intervention   1 311
       
      Bonne soirée à toi aussi. :)

      PS: j'ai édité mon message pour ajouter un lien pour une explication plus globale de ce qu'est une macro événementielle
      0