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

VB 6 et antérieur Discussion :

Date et Heure : Conseil


Sujet :

VB 6 et antérieur

  1. #1
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Février 2003
    Messages
    2 177
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2003
    Messages : 2 177
    Points : 4 489
    Points
    4 489
    Par défaut Date et Heure : Conseil
    Bonjour mon expérience en VB6 étant assez limité, j'aurai souhaité un conseil pour résoudre ce petit problème.
    Quand l'instant courant est entre 06h00 et 13h59 je dois renvoyer 1
    Quand l'instant courant est entre 14h00 et 21h59 je dois renvoyer 2
    Quand l'instant courant est entre 22h00 et 05h59 je dois renvoyer 3

    Donc si je lance la fonction le 01/01/07 à 06:00
    je dois retourner 01/01/07 1

    Donc si je lance la fonction le 01/01/07 à 15:00
    je dois retourner 01/01/07 2

    Donc si je lance la fonction le 02/01/07 à 05:59
    je dois retourner 01/01/07 3
    Je ne suis qu'un pauvre débutant alors ne frappez pas si mes idées ne sont pas bonnes

  2. #2
    Membre éprouvé Avatar de avigeilpro
    Homme Profil pro
    Ambulancier
    Inscrit en
    Janvier 2004
    Messages
    880
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Creuse (Limousin)

    Informations professionnelles :
    Activité : Ambulancier
    Secteur : Transports

    Informations forums :
    Inscription : Janvier 2004
    Messages : 880
    Points : 971
    Points
    971
    Par défaut
    Tu peux comparer les heures sous VB, utilise donc une serie de if. l'heure est lue par la variable Time.
    La connaissance seule ne suffit pas. La vraie compréhension vient de la mise en expérience.
    Règles|FAQ|Tuto

  3. #3
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    Comme te l'a si bien suggere avigeilpro tu peux passer par les if imbriques, mais moi je te proposerais aussi le Select Case

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim Heure as Date
    Dim Equiv as Byte
     
    Heure = Format(Now,"hh:mm")
     
    Select case Heure
          Case 6:00 To 13:59: Equiv = 1
          Case 14:00 To 21:59: Equiv = 2
          Case 22:00 To 5:59: Equiv = 3
    End select
     
    msgbox Format(Now,"dd/mm/yy") & "  " & str(Equiv)
    "Toute question a une reponse. Et chaque reponse est une nouvelle question." Albert EINSTEIN

    En cas de Question resolu, n'oubliez pas

  4. #4
    Membre averti
    Homme Profil pro
    Développeur VB6 et tout neuf en .Net
    Inscrit en
    Avril 2005
    Messages
    377
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Développeur VB6 et tout neuf en .Net
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2005
    Messages : 377
    Points : 446
    Points
    446
    Par défaut
    Histoire d'ajouter mon grain de sel :

    Sovo, la syntaxe exacte serait plustot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Select Case Heure
          Case #6:00:00 AM# To #1:59:00 PM#: Equiv = 1
          Case #2:00:00 PM# To #9:59:00 PM#: Equiv = 2
          Case #10:00:00 PM# To #5:59:00 AM#: Equiv = 3
    End Select
    Et afin d'éviter tout problème de conversion de type implicte fait par VB, je préfére convertir la date et l'heure en double. Je trouve la conversion beaucoup plus naturelle.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
      Dim Equiv                         As Byte
     
      Select Case CDbl(Time)
      Case Is < (CDbl(#6:00:00 AM#)):  Equiv = 3
      Case Is < (CDbl(#2:00:00 PM#)):  Equiv = 1
      Case Is < (CDbl(#10:00:00 PM#)): Equiv = 2
      Case Else:                       Equiv = 3
      End Select
     
      MsgBox FormatDateTime(Now) & "  " & Str(Equiv)
    Le plus difficile pour trouver une bonne réponse, c'est déjà de trouver la bonne question.

  5. #5
    Membre chevronné
    Avatar de sovo
    Homme Profil pro
    Développeur Java
    Inscrit en
    Mars 2004
    Messages
    1 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 389
    Points : 1 788
    Points
    1 788
    Par défaut
    Citation Envoyé par Najdar
    Sovo, la syntaxe exacte serait plustot
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Select Case Heure
          Case #6:00:00 AM# To #1:59:00 PM#: Equiv = 1
          Case #2:00:00 PM# To #9:59:00 PM#: Equiv = 2
          Case #10:00:00 PM# To #5:59:00 AM#: Equiv = 3
    End Select
    Autant pour moi. merci.
    "Toute question a une reponse. Et chaque reponse est une nouvelle question." Albert EINSTEIN

    En cas de Question resolu, n'oubliez pas

Discussions similaires

  1. probleme date et heure avec mysql.
    Par argon dans le forum Langage SQL
    Réponses: 1
    Dernier message: 11/07/2005, 22h42
  2. Pb Calcul de dates ET heure
    Par priest69 dans le forum Access
    Réponses: 4
    Dernier message: 13/06/2005, 12h33
  3. récupérer la date et heure système
    Par Rnx69 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 01/06/2005, 15h43
  4. [date et heure] convertion d'une date en chaîne
    Par jean-jacques varvenne dans le forum SQL
    Réponses: 5
    Dernier message: 23/03/2005, 11h31
  5. Manipulations de dates et heures
    Par benj63 dans le forum C++
    Réponses: 5
    Dernier message: 16/12/2004, 15h09

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