1. #1
    Futur Membre du Club
    Inscrit en
    août 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 9
    Points : 9
    Points
    9

    Par défaut Programmer des alarmes a des heures spécifiques

    Bonjour cher membre de la communauté

    je viens vers vous pour m'aider a trouver une solution à mon problème. En effet j'ai été chargé par le curé de notre paroisse, d'établir une application qui jouerait la prière angelus, à des heures spécifiques et qui sonnerait la cloche à chaque heure selon l'heure affichée par le système. pour ça un fichier audio mp3 contenant la sonnerie d'une cloche a été mis à disposition.
    pour ce faire j'ai créé une base Access comprenant 1 table pour stocker les heures et un formulaire sur lequel j'ai inséré ce code pris sur un autre tuto:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Dim varHeureExec As Variant
    Dim varDerniereExec As Variant
     
    ' Lire l'heure d'exécution
    varHeureExec = DLookup("[Heure Exécution]", "tbl Minuterie")
    If IsNull(varHeureExec) Then Exit Sub
     
    ' Lire l'heure de dernière exécution
    varDerniereExec = DLookup("[Derniere Exécution]", "tbl Minuterie")
    If IsNull(varDerniereExec) Then varDerniereExec = #1/1/1900 12:00:00 PM#
     
     
     
    ' Si l'heure actuelle est supérieure à celle de base, exécuter le processus
    If Time > varHeureExec Then
      ' Mettre à jour la date d'exécution
      CurrentDb.Execute "UPDATE [tbl Minuterie] SET [Derniere exécution]=#" & _
          Format(Now, "mm/dd/yyyy hh:nn:ss") & "#"
     
      ' Exécuter une action...
      WindowsMediaPlayer0.URL = "C:\Users\Momo\Desktop\PSquare.mp3"
      Me.TimerInterval = 0
    End If
    Problème, je me rends compte que le code n'exécute pas les instruction comme je voulais. je voudrai donc que l'on puisse m'orienter et si possible corriger ce code pour répondre au besoin exprimé. merci

  2. #2
    Membre expert Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    mai 2008
    Messages
    2 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 2 371
    Points : 3 874
    Points
    3 874

    Par défaut

    Bonjour,

    Le plus simple est d'utiliser une procédure événementielle "sur minuterie" qui va exécuter un code de ce type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Form_Timer()
    if TimeValue(Now()) = TimeValue("12:00:00") Then 'sonner midi
    elseif ...
    end if
    End Sub
    La fréquence d'exécution est définie par le paramètre "intervalle minuterie"
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

  3. #3
    Rédacteur/Modérateur

    Avatar de Philippe JOCHMANS
    Homme Profil pro
    Développeur informatique
    Inscrit en
    mai 2005
    Messages
    19 704
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Communication - Médias

    Informations forums :
    Inscription : mai 2005
    Messages : 19 704
    Points : 48 515
    Points
    48 515

    Par défaut

    Bonjour

    Le problème, c'est que Access doit être ouvert en permanence.

    Je passerais plutôt par les tâches planifiées qui lanceraient Access à certaines heures et sur une macro autoexec qui lancerait un code en fonction de l'heure.

    Tu as plus de chances d'avoir le PC toujours allumés que Access ouvert en permanence.

    Philippe
    Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
    Vous pouvez consulter mes articles sur Access et PowerPoint et n'oubliez pas de consulter les FAQs MS Office

  4. #4
    Membre expert Avatar de nico84
    Homme Profil pro
    Consultant/développeur ERP
    Inscrit en
    mai 2008
    Messages
    2 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France

    Informations professionnelles :
    Activité : Consultant/développeur ERP
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : mai 2008
    Messages : 2 371
    Points : 3 874
    Points
    3 874

    Par défaut

    Cela fait donc au moins 2 solutions

    Citation Envoyé par Philippe JOCHMANS Voir le message
    Tu as plus de chances d'avoir le PC toujours allumés que Access ouvert en permanence.
    C'est juste mais alors autant se passer d'access qui ne sert plus à grand chose
    Utilisez Planet, gestion d'entreprise gratuite pour TPE / PME

  5. #5
    Futur Membre du Club
    Inscrit en
    août 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 9
    Points : 9
    Points
    9

    Par défaut

    Merci a vous pour ces réponses ultra rapide.
    effectivement l'application serait hébergée sur un serveur qui comme vous le savez est en permanence allumée.

    pour ce qui est de lancer access aux heures programmées, tres bonne idée. je me penche sur la mise en oeuvre de cette solution, si déjà je peux avoir sur ce sujet certaines orientations cela boosterait encore plus mon boulot.
    vraiment merci a tous pour votre promptitude.

  6. #6
    Futur Membre du Club
    Inscrit en
    août 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 9
    Points : 9
    Points
    9

    Par défaut

    Bonjour,
    Suite a probleme expliqué plus haut j'ai essayé de mettre en oeuvre les solutions proposées. malheureusement j'ai ,pas pu.
    j'ai refléchi a une solution, si ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    Dim varHeureExec As Variant
    Dim varDerniereExec As Variant
     
    ' Lire l'heure d'exécution
    varHeureExec = DLookup("[Heure Exécution]", "tbl Minuterie")
    If IsNull(varHeureExec) Then Exit Sub
     
    ' Lire l'heure de dernière exécution
    varDerniereExec = DLookup("[Derniere Exécution]", "tbl Minuterie")
    If IsNull(varDerniereExec) Then varDerniereExec = #1/1/1900 12:00:00 PM#
     
    ' Si l'heure actuelle est supérieure à celle de base, exécuter le processus
    If TimeValue(Now()) > varHeureExec Then
      ' Mettre à jour la date d'exécution
      CurrentDb.Execute "UPDATE [tbl Minuterie] SET [Derniere exécution]=#" & _
          Format(Now, "mm/dd/yyyy hh:nn:ss") & "#"
     
      ' Exécuter une action...
      WindowsMediaPlayer.URL = "C:\Users\Momo\Desktop\PSquare.mp3"
     
      MsgBox "Alarme !", vbInformation
    pouvait être intégré dans un module qui serait appélé chaque fois que la condition est réunie ce serait idéal pour moi.

    le probleme c'est que j'arrive pas créer de module aussi simple soit il ou de fonction qu'une macro autoexec pourrait faire appelle .
    merci d'avance

  7. #7
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Developpeur VBA migrant tranquillement vers C# et VB.Net =]
    Inscrit en
    juillet 2007
    Messages
    12 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Developpeur VBA migrant tranquillement vers C# et VB.Net =]
    Secteur : Finance

    Informations forums :
    Inscription : juillet 2007
    Messages : 12 383
    Points : 27 345
    Points
    27 345

    Par défaut

    Bonjour,

    je pense que ce tutoriel devrait être particulièrement adapté à ton cas de figure

    http://jpcheck.developpez.com/tutori...depuis-access/
    Pas de question technique par MP, je ne réponds pas

    Apprendre à programmer avec Access 2016

    Pensez à consulter la FAQ Excel et la FAQ Access

    Derniers tutos
    Excel et les paramètres régionaux
    Les fichiers Excel binaires : xlsb,

    Autres tutos

  8. #8
    Futur Membre du Club
    Inscrit en
    août 2008
    Messages
    9
    Détails du profil
    Informations forums :
    Inscription : août 2008
    Messages : 9
    Points : 9
    Points
    9

    Par défaut

    Merci beaucoup pour ta réponse.
    et désole de te répondre tardivement, soucis de santé mais ça va.
    je vais expérimenter cette solution et voir ce que ça donne . je vous fais un retour d'ici peu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 05/09/2011, 13h53
  2. Trigger pour mettre des droits sur des procedures et des vues
    Par briino dans le forum Développement
    Réponses: 3
    Dernier message: 23/09/2009, 10h44
  3. Réponses: 4
    Dernier message: 02/04/2008, 18h51
  4. Réponses: 3
    Dernier message: 13/09/2007, 19h11
  5. Réponses: 3
    Dernier message: 23/01/2007, 09h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo