VBA test avec Hour et Minute (résolu)

  • Initiateur de la discussion Initiateur de la discussion dancar
  • 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 !

dancar

XLDnaute Junior
Bonjour à toutes et à tous,

J'ai besoin de tester si la cellule E4 qui est au format heure 00:00 contient bien 00:00 quelque soit le jour.
je le fais via l'extrait de code suivant qui fait référence à un test logique dans la cellule AC3.
If [AC3] = FAUX Then 'le test dans AC3 est: =OU(HEURE(E4)>0;MINUTE(E4)>0)
msgbox "blablabla"
Exit Sub
End If

Je préférerai ne pas mettre le test =OU(HEURE(E4)>0;MINUTE(E4)>0) dans la cellule AC3 (ou une autre) et faire ce test uniquement dans le code de la macro. J'ai donc essayé le code suivant
If Hour(E4) > 0 Or Minute(E4) > 0 Then
msgbox "Blablabla"
Exit Sub
End If

mais il ne fonctionne pas et ne génère aucun message d'erreur.
J'ai essayé un grand nombre de syntaxes et passer un temps fou sur Internet pour trouver la solution mais sans succès. Inutile de préciser que je n'ai pas une grande connaissance de VBA.

Merci à celles et ceux qui éclaireront ma lanterne.
Bonne soirée
 
Bonjour à toutes et à tous,

J'ai besoin de tester si la cellule E4 qui est au format heure 00:00 contient bien 00:00 quelque soit le jour.
je le fais via l'extrait de code suivant qui fait référence à un test logique dans la cellule AC3.
If [AC3] = FAUX Then 'le test dans AC3 est: =OU(HEURE(E4)>0;MINUTE(E4)>0)
msgbox "blablabla"
Exit Sub
End If

Je préférerai ne pas mettre le test =OU(HEURE(E4)>0;MINUTE(E4)>0) dans la cellule AC3 (ou une autre) et faire ce test uniquement dans le code de la macro. J'ai donc essayé le code suivant
If Hour(E4) > 0 Or Minute(E4) > 0 Then
msgbox "Blablabla"
Exit Sub
End If

mais il ne fonctionne pas et ne génère aucun message d'erreur.
J'ai essayé un grand nombre de syntaxes et passer un temps fou sur Internet pour trouver la solution mais sans succès. Inutile de préciser que je n'ai pas une grande connaissance de VBA.

Merci à celles et ceux qui éclaireront ma lanterne.
Bonne soirée

J'ai fini par trouver la solution
If Hour([E4]) > 0 Or Minute([E4]) > 0 Then
msgbox "Blablabla"
Exit Sub
End If

Il fallait rajouter des [ ]

Philippe et Eric, encore merci d'avoir voulu m'aider
 
Re,

J'ai fini par trouver la solution
If Hour([E4]) > 0 Or Minute([E4]) > 0 Then
msgbox "Blablabla"
Exit Sub
End If

Il fallait rajouter des [ ]

Cette solution n'est pas bonne car elle ne répond pas à la demande initiale qui stipulait

J'ai besoin de tester si la cellule E4 qui est au format heure 00:00 contient bien 00:00 quelque soit le jour.

La bonne solution est:
If Hour([E4]) > 0 And Minute([E4]) > 0 Then

à+
Philippe
 
Bonsour® Philippe 🙁🙁🙁🙁🙁,

😉😉😉😉😉😉😛😛😛😛
Cette solution n'est pas bonne non plus !!!
car elle ne répond pas à la demande initiale qui stipulait :
la cellule E4 qui est au format heure 00:00 contient bien 00:00

la cellule contient une valeur qui n'est pas "00:00" mais qui s'affiche sous forme de texte "00:00" !!!
ne pas confondre affichage et valeur !!!

le contenu est vraisemblablement une valeur décimale
dont la partie décimale est proche de zéro ou tout au moins inférieure à : 0,000683

dixit ma proposition (tetracapillosectomie )

littéralement
If [E4].Text = "00:00" Then

😀🙄🙄🙄🙂
Hi... Hi... Hi...


 
Dernière édition:
- 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

Discussions similaires

Réponses
72
Affichages
1 K
Réponses
2
Affichages
154
Réponses
4
Affichages
243
Réponses
4
Affichages
225
Retour