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

Quelle heure avez-vous ?

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

xhudi69

XLDnaute Accro
Bonjour à toutes et à tous

Cela a déjà été évoqué sur les forums, mais je n'ai pas trouvé mon bonheur.
dans le fichier joint un bouton "ça marche" avec un Userform et un TextBox au format ([h]:mm:ss;@) qui copie une cellule au format Text, tout ce passe bien.
Avec le bouton "ça marche pas" le TextBox1 reçois la valeur de la cellule qui est au format ([h]:mm:ss;@) et c'est là que cela se gâtte.
Avez vous une solution pour obliger le TextBox1 à recevoir dans le bon format ?

Autre question, si le TextBox1 est >= à 10:00:00 alors le TextBox3 affiche "1", quel en serait le bon code.

Merci pour votre temps passé.
 

Pièces jointes

Re : Quelle heure avez-vous ?

Re,

Une amélioration qui permet de ne pas écrire les secondes :

Code:
Private Sub CommandButton1_Click()
TextBox3 = SommeHeures(TextBox1, "-" & TextBox2) 'soustraction
End Sub

Function SommeHeures(h1, h2)
Dim signe1%, signe2%, s
On Error Resume Next
If Not h1 Like "*:*:*" Then h1 = h1 & ":0" 'secondes manquantes
If Not h2 Like "*:*:*" Then h2 = h2 & ":0"
signe1 = IIf(Left(h1, 1) = "-", -1, 1)
signe2 = IIf(Left(h2, 1) = "-", -1, 1)
s = Split(Replace(h1, "-", ""), ":")
h1 = signe1 * (s(0) / 24 + s(1) / 1440 + s(2) / 86400)
s = Split(Replace(h2, "-", ""), ":")
h2 = signe2 * (s(0) / 24 + s(1) / 1440 + s(2) / 86400)
s(0) = Int(CDec(24 * Abs((h1 + h2))))
s(1) = Format(Minute(Abs(h1 + h2)), "00")
s(2) = Format(Second(Abs(h1 + h2)), "00")
SommeHeures = IIf(h1 + h2 < 0, "-", "") & Join(s, ":")
If Err Then SommeHeures = "" 'facultatif...
End Function
A+
 
Dernière édition:
Re : Quelle heure avez-vous ?

Re,

Inutile de préciser qu'on peut traiter autant d'heures (TextBoxes) que l'on veut :

Code:
TextBox4 = SommeHeures(SommeHeures(TextBox1, "-" & TextBox2), "-" & TextBox3)
On peut même faire une boucle...

A+
 
Re : Quelle heure avez-vous ?

Bonjour job75, le Forum

Formidable 🙂
un grand merci à toi, pour tes recherches et ton temps, je vois tout cela et adapte dans mes fichiers.

merci encore. 😎
 
- 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

  • Question Question
Réponses
15
Affichages
2 K
Réponses
5
Affichages
1 K
Membre supprimé 341069
M
Réponses
3
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…