IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Multiplier une date avec une heure


Sujet :

Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Par défaut Multiplier une date avec une heure
    Alors voila, je récupère une base Access et on me demande comment son fait les calculs.

    Le problème c'est que je ne les comprends pas très bien moi même


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    délai de réponse: (CalculDélai(A50_CVS_attente3![Date réception];A50_CVS_attente3![Date livraison])*(Heure([délai de réponse: (CalculDélai(A50_CVS_attente3![Date réception];A50_CVS_attente3![Date livraison])*(Heure([A40_TTRA_Heures ouvrées]!HFJ)-Heure([A40_TTRA_Heures ouvrées]!HDJ)))-[délai attente]
    Déjà je connaissais pas la fonction CalculDélai mais je suppose quelle doit faire la différence entre deux dates mais à savoir ce quelle retourne c'est une autre paire de manche. A mon avis, sa doit être le nombre de jour avec les heures derrière la virgule.

    Puis après, il y a une multiplication entre une date et une heure et c'est là que je commence à me noyer.
    Comment peut-on multiplier une date et une heure.

    Si vous vous avez une idée ?

  2. #2
    Membre confirmé
    Inscrit en
    Août 2002
    Messages
    157
    Détails du profil
    Informations forums :
    Inscription : Août 2002
    Messages : 157
    Par défaut
    salut,

    moi je connais datediff qui peut retourner la différence entre des date mais dependatment du paramettre interval , la réponse ne pas etre une date par exemple le nombre de jours, d'heures de minutes de semaines donc
    si on supose que ta fonction retourne el nombre de jour on peut multiplier par une heure comme ca on pourra savoir combien d'heure dans cette periode à été consacrée à cette activité voici un lien qui peut t'aider
    http://www.techonthenet.com/excel/formulas/datediff.php
    voila donne moi des nouvelle

  3. #3
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Bonjour,

    à mon avis CalculDélai est une fonction écrite en VBA.
    Fai une recherche dans les modules de codes.

    Si le résultat de la fonction est en jour(s), on peut très bien le multiplier par le nombre d'heures d'une journée.
    (Heure fin de journée - heure début de journée)

    A+

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Par défaut
    Citation Envoyé par LedZeppII
    Bonjour,

    à mon avis CalculDélai est une fonction écrite en VBA.
    Fai une recherche dans les modules de codes.
    En effet, j'ai trouver une fonction dans un module VBA, je savais pas que l'on pouvais utiliser une fonction d'un module dans une requête.

    Je crois que je vais encore bien m'amuser à comprendre celle-ci
    Celle-ci renvoie un double. Mais comme je disais précédement, la multiplication se fait avant de faire l'appel à la fonction CalculDélai

  5. #5
    Expert confirmé
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Par défaut
    Es-tu bien sûr de la formule postée ?
    délai de réponse: (CalculDélai(A50_CVS_attente3![Date réception];A50_CVS_attente3![Date livraison])*(Heure([délai de réponse: (CalculDélai(A50_CVS_attente3![Date réception];A50_CVS_attente3![Date livraison])*(Heure([A40_TTRA_Heures ouvrées]!HFJ)-Heure([A40_TTRA_Heures ouvrées]!HDJ)))-[délai attente]
    Si j'enlève la partie en rouge (copie conforme de la partie en bleu)
    délai de réponse:
    (CalculDélai(A50_CVS_attente3![Date réception];A50_CVS_attente3![Date livraison])
    *(Heure([A40_TTRA_Heures ouvrées]!HFJ)-Heure([A40_TTRA_Heures ouvrées]!HDJ)))-[délai attente]
    ça a l'air plus vraisemblable.

    A+

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Par défaut
    Oui absolument sur puisque j'ai fait un copier coller de cette formule qui était dans ma requête SQL.

    Voila les données que j'ai
    15/11/2006 15:56:00 -> date reception
    24/11/2006 15:54:00 -> date livraison

    et je sais que sa

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    A40_TTRA_Heures ouvrées]!HFJ)-Heure([A40_TTRA_Heures ouvrées]!HDJ)))-[délai attente]
    donne toujours 9h00m00s

    Et le résultat de ma requête est 62,9666666666667

    Le calcul du délai s'effectue comme cela :

    CalculDélai = écart entre date reception et date livraison (en jours) + (écart entre date reception et date livraison (en heures) / 9)

    Donc si je suis cette exemple : l'écart en jours est de 9 + ( (2/60) pour mettre tous sur une heure / 9) = 9,0037037037037037037037037037037

    Et si je multiplie ce résultat je trouve
    9,0037 * 9 = 81,0333

    Mais comme fait Access pour trouver ce résultat

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    364
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 364
    Par défaut
    Oui mais le problème c'est que je fais ma multiplication avant de faire ma fonction CalculDélai.


    Je fais donc
    28/12/2006 17:15:00 * 9:00:00

    Et la je vois pas trop ce que sa donne.
    Encore cela aurait était une addition, j'aurais compris mais là. Je vois pas

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

Discussions similaires

  1. [AC-2007] Comparer une date d'une table et une date saisie
    Par minooo dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 10/03/2019, 21h40
  2. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  3. [XL-2002] Macro de comparaison d'une cellule d'une feuille avec une cellule d'une autre feuille.
    Par steelydan dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/09/2010, 12h59
  4. Réponses: 4
    Dernier message: 15/10/2009, 13h33
  5. Renseigner un TDateTime avec une date et une heure ?
    Par MaTHieU_ dans le forum Delphi
    Réponses: 2
    Dernier message: 10/07/2006, 01h50

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