Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

[VBA]Format date combo pas ok si cellule vide

  • Initiateur de la discussion Initiateur de la discussion TheLio
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

TheLio

XLDnaute Accro
Salut le forum et les forumeurs,
Dans le fichier joint, qui avance gentillement grâce à vous 🙂
Je rencontre un petit souci avec les combobox au format date.
Lorsque je passe d'une chambre à l'autre.
Difficile à expliquer, essayez le fichier avec le bouton 9
en passant le chambre 117 (alimentée en collation)
à la chambre 118 (non alimentée en collation) ça bug.
J'ai passé l'après-midi à essayer de comprendre, mais en vain.🙁

Autre problème, je suis incapable de faire, je suppose une boucle, avec mon bouton effacer, il fonctionne, mais l'idéal, serait que les combo se mettent à jour une fois les données de la base de donnée effacées.

Par avance je vous remercie pour vos pistes (avec explications pour que j'assimile 😉)

A++

Li🙂
 

Pièces jointes

Re : [VBA]Format date combo pas ok si cellule vide

Bonsoir,

Essaie de modifier les lignes suivantes comme suit :

Private Sub cbCollation1_Change()
If cbCollation1.Value <> "" Then cbCollation1.Value = Format(CDate(cbCollation1.Value), "hh:mm")
End Sub
Private Sub cbCollation2_Change()
If cbCollation2.Value <> "" Then cbCollation2.Value = Format(CDate(cbCollation2.Value), "hh:mm")
End Sub
Private Sub cbCollation3_Change()
If cbCollation3.Value <> "" Then cbCollation3.Value = Format(CDate(cbCollation3.Value), "hh:mm")
End Sub
Private Sub cbCollation4_Change()
If cbCollation4.Value <> "" Then cbCollation4.Value = Format(CDate(cbCollation4.Value), "hh:mm")
End Sub
Private Sub cbCollation5_Change()
If cbCollation5.Value <> "" Then cbCollation5.Value = Format(CDate(cbCollation5.Value), "hh:mm")
End Sub

Parfois cbCollationx.Value est vide donc le Format(CDate(cbCollationx.Value), "hh:mm") plante.
Mais je n'ai pas regardé la cause ni l'impact sur la suite du code ...
 
Re : [VBA]Format date combo pas ok si cellule vide

Re,
Effectivement, si l'on rentre par erreur une valeur non numérique, ça plante...
Je vais voir pour trouver une parade, car ce masque est destiné à des personnes dénuées de toute logique😀😀😀
JE plaisante, enfin presque...
A++
Lio
 
Re : [VBA]Format date combo pas ok si cellule vide

Re,

Tu peux tester également ceci :

If IsDate(cbCollation1.Value) Then cbCollation1.Value = Format(CDate(cbCollation1.Value), "hh:mm")

N'affecte la valeur que si cbCollation1.Value est une date ou une heure.
Mais onpeut qd meme saisir une date par erreur ...

Ou bien ceci :
If IsDate(cbCollation1.Value) Then If CDate(cbCollation1.Value) < 1 Then cbCollation1.Value = Format(CDate(cbCollation1.Value), "hh:mm")

Qui vérifie que l'heure tapée est inférieure à 24:00
 
Dernière édition:
Re : [VBA]Format date combo pas ok si cellule vide

Hello,
Le rouge de la honte devrait envahir mes joues, alors que je dormais paisiblement, tu travaillais encore sur mon code 🙂
Merci.
Je n'ai pas compris la subtilité:
Qui vérifie que l'heure tapée est inférieure à 24:00
On peut toujours entrer des valeurs supérieures? mais ça ne les mets pas au format hh:mm, c'est ça?
Toute bonne journée
A++
Lio
 
Re : [VBA]Format date combo pas ok si cellule vide

Bonjour,

Normalement (normalement car je l'ai testé avec une variable pas avec ton userform) on ne peut entrer que un horaire entre 00:00 et 23:59.
Mais je ne sais pas si c'est ce que tu veux ...
Ca teste si c'est un format date (heure) et si oui, ça teste si on saisit une valeur inferieure à 24:00 si oui on l'affecte au control si non, on ne fait rien.

Si tu veux entrer des valeurs au dela de 24:00, ceci de vrait fontionner :
If IsDate(cbCollation1.Value) Then Then cbCollation1.Value = Format(CDate(cbCollation1.Value), "hh:mm")
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…