Problème Heure de midi (12h00) dans une Combobox

Messages postés
2
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
16 janvier 2019
- - Dernière réponse : Patrice33740
Messages postés
7594
Date d'inscription
dimanche 13 juin 2010
Dernière intervention
15 février 2019
- 21 janv. 2019 à 09:34
Bonjour,

je suis en train de me construire un planning sur excel avec une mise à jour automatique de celui-ci.

Pour ce faire, je saisi un nouvel événement via un Userform où je saisi un Titre dans une textbox, une date, une heure de début et une heure de fin dans des combobox.

J'ai mis un code de contrôle sur la combobox d'heure de fin si elle est inférieure à l'heure de début.
Ce code fonctionne à merveille sauf pour 12h00 (où la combobox considère que c'est 0h00) et donc le message d'erreur s'affiche à chaque fois que je veux enregistrer un événement se finissant à 12h00.

Voici le code :

If CbXHeureFin <> "" And CbXHeureFin.Value < CbXHeureDeb Then
MsgBox "L'heure de fin doit être supérieure à l'heure de début !"
CbXHeureFin.Value = ""
End If
'CbXHeureFin est la Combobox d'heure de fin et CbXHeureDeb est la Combobox d'heure de début


Quelqu'un peut-il me dire comment résoudre ce problème ?
Merci par avance de votre aide

PS : je débute totalement sur un forum donc veuillez m'excuser si je ne m'y prend pas correctement pour poser ma question
Afficher la suite 

Votre réponse

3 réponses

Meilleure réponse
Messages postés
24534
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
15 février 2019
362
1
Merci
Bonjour,

Sous quel format entre tu tes heures dans la combo ?
Sous quel format sont tes heures dans CbXHeureDeb ?
Que contient ta variable CbXHeureDeb ?

par ce que là... j'ai l'impression que tu fais de la comparaison de text et non d'heures... d'où le souci....

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jordane45
Messages postés
7594
Date d'inscription
dimanche 13 juin 2010
Dernière intervention
15 février 2019
15
1
Merci
Salut Jordane,

C'est plus qu'une impression, c'est une certitude, le contenu d'un combobox est toujours du texte.


Bonjour Ugodelires75

Essaies :
  If CbXHeureFin.Value <> "" And Val(CbXHeureFin.Value) < Val(CbXHeureDeb.Value) Then
    MsgBox "L'heure de fin doit être supérieure à l'heure de début !"
    CbXHeureFin.Value = ""
  End If


PS : « sauf pour 12h00 (où la combobox considère que c'est 0h00) » Non, un combobox n'interprète rien, c'est parfois le VBA lorsqu'on compare les torchons et les serviettes (à ne pas mélanger !).
Il faut systématiquement typer les valeurs et les variables pour éviter ce genre de désagrément.

Cordialement
Patrice

Dire « Merci » 1

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CodeS-SourceS

Codes Sources 118 internautes nous ont dit merci ce mois-ci

Commenter la réponse de Patrice33740
Messages postés
2
Date d'inscription
mardi 15 janvier 2019
Dernière intervention
16 janvier 2019
0
Merci
Bonjour jordane45 et Patrice33740,

Merci pour vos réponses.

Patrice33740, j'ai appliqué ta petite correction mais, le problème existe toujours.

J'ai cependant trouvé une petite combine pour que mon test sur la combobox fonctionne :

comme j'alimente mes combobox pour les heures par des valeurs situées dans des cellules, pour 12h00, au lieu de taper 12:00:00 dans la cellule, j'ai entré 12:00:01 et le tour est joué.

Encore merci à vous d'avoir essayé de m'aider
Patrice33740
Messages postés
7594
Date d'inscription
dimanche 13 juin 2010
Dernière intervention
15 février 2019
15 -
C'est curieux !
Commenter la réponse de Ugodelires75

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.