textbox au format horaire

D

denos

Guest
Bonsoir à tous

Sous excel xp

J'ai dans un userform un textbox1(debut de poste) un textbox2(debut coupure1) un textbox3(fin coupure1) un textbox4(debut coupure2) un textbox5(fin coupure2) et un textbox6(fin de poste)

mon prob:

1) donner le format aux 6 textbox pour les 24 h 00
2) Faire la somme dans un 7 ème textbox de textbox1 et de textbox6
bien sur, sans le temp des coupures

Là !!!! j'en demande Bcp mais je seche completement.

Si qué qu1 à la soluce d'avance grand merci,


Grand merci à tous
 
D

denos

Guest
Bonsoir à tous

je joint un bout de fichier qui je pense parle de lui-même.
C'est pas un truc simple j'ai remonté sur un mois les fils mais de cas similr

D'avance MERCI
 

Pièces jointes

  • Montplang.zip
    19 KB · Affichages: 23
M

Myta

Guest
Salut Denos

Ceci devrait resoudre ton probleme

Private Sub Time6_Change()

TextBox1 = CDate(Time2) - CDate(Time1) + CDate(Time4) - CDate(Time3) + CDate(Time6) - CDate(Time5)
TextBox1 = Format(TextBox1, "hh:mm")

End Sub

Mytå
 
D

denos

Guest
Bonjour à tous

MERCI Myta

Super!!! Super!!!ça marche super

encore une tite question
TextBox1 = Format(TextBox1, "hh:mm") ok pour le format 12h00 mais pour faire un total de 5 textbox je dépase les 24h00 et Là,,,,ça coince
d'avance MERCI
 
L

LaurentTBT

Guest
Bonsoir Denos, Myta et tout le monde.

Si tu veux pouvoir compter les heures au delà de 24h, il faut simplement utiliser le format [hh]:mm au lieu de hh:mm

J'espère que cela fonctionnera dans tes contrôles.

Salut
 
D

denos

Guest
Re-Bonsoir à tous

Bon Bin je seche pour additionner les 5 textbox qui ~8:00 de valeur soit un total de 40:00.
Avec le bout de code ci-dessous le textbox6 me donne 16:00 ???????????


TextBox6 = CDate(TextBox1) + CDate(TextBox2) + CDate(TextBox3) + CDate(TextBox4) + CDate(TextBox5)
TextBox6 = Format(TextBox6.Value, "hh:mm")

Quelqu'un à une soluce ?

Merci
 
L

LaurentTBT

Guest
Désolé, Denos, mais là, je sèche.

En effet, la première ligne doit bien te donner TextBox 6=1,66666667
Or, si dans une cellule excel, tu rentre 1,666666667, et ensuite, si tu appliques à cette cellule le format personnalisé "[hh]:mm", alors tu obtiendras bien 40:00.

Et je ne comprends pas pourquoi avec Format, cela ne fonctionne pas. Désolé.

Bon courage, et patience, quelqu'un trouvera bien!

Laurent.
 
M

Myta

Guest
Re Denos, LaurentTBT

Voila pour afficher plus de 24 hres dans une ListBox

Dim Somme As Single

Somme = (CDate(Time1) + CDate(Time2) + CDate(Time3) + CDate(Time4) + CDate(Time5)) * 24

TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")

A+ Mytå
 
D

denos

Guest
Bonsoir à tous

Merci LaurenTBT, Myta

Mais je crois bien que j'ai un prob dans le code ci-dessous, en fait ,j'additionne le total de lundi, mardi,mercredi,jeudi,vendredi dans la textbox6, Mais ça coince encore,

je sais plus...............

Private Sub Time6_Change()
Dim Somme As Single
TextBox1 = (CDate(Time2) - CDate(Time1)) + (CDate(Time4) - CDate(Time3)) + (CDate(Time6) - CDate(Time5))
TextBox1 = Format(TextBox1.Value, "hh:mm")
Somme = CDate(TextBox1.Value) * 24
TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")
End Sub

Private Sub ComboBox11_Change()
Dim Somme As Single
TextBox2 = (CDate(ComboBox3) - CDate(ComboBox1)) + (CDate(ComboBox5) - CDate(ComboBox4)) + (CDate(ComboBox11) - CDate(ComboBox6))
TextBox2 = Format(TextBox2.Value, "hh:mm")

TextBox6 = CDate(TextBox1) + CDate(TextBox2)
TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")

End Sub

Private Sub ComboBox27_Change()
Dim Somme As Single
TextBox3 = (CDate(ComboBox19) - CDate(ComboBox17)) + (CDate(ComboBox21) - CDate(ComboBox20)) + (CDate(ComboBox27) - CDate(ComboBox22))
TextBox3 = Format(TextBox3.Value, "hh:mm")

Somme = CDate(TextBox1.Value) + CDate(TextBox2.Value) + CDate(TextBox3.Value) * 24
TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")

End Sub

Private Sub ComboBox43_Change()
Dim Somme As Single
TextBox4 = (CDate(ComboBox35) - CDate(ComboBox33)) + (CDate(ComboBox37) - CDate(ComboBox36)) + (CDate(ComboBox43) - CDate(ComboBox38))
TextBox4 = Format(TextBox4.Value, "hh:mm")

Somme = CDate(TextBox1.Value) + CDate(TextBox2.Value) + CDate(TextBox3.Value) + CDate(TextBox4.Value) * 24
TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")

End Sub

Private Sub ComboBox59_Change()
Dim Somme As Single
TextBox5 = (CDate(ComboBox51) - CDate(ComboBox49)) + (CDate(ComboBox53) - CDate(ComboBox52)) + (CDate(ComboBox59) - CDate(ComboBox54))
TextBox5 = Format(TextBox5.Value, "hh:mm")

Somme = CDate(TextBox1) + CDate(TextBox2) + CDate(TextBox3) + CDate(TextBox4) + CDate(TextBox5) * 24
TextBox6 = Format(Int(Somme), "00") & ":" & Format((Somme - Int(Somme)) * 60, "00")

End Sub



Encore merci pour le coup de mains
 
M

Myta

Guest
Re le Forum

Denos tu devrais plutot envoyer un fichier Zipper

J'ai pas à refaire ton Userform pour t'aider....

Deja de un il manque un set de ()

Somme = (CDate(TextBox1) + CDate(TextBox2) + CDate(TextBox3) + CDate(TextBox4) + CDate(TextBox5)) * 24

Mytå
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 612
Messages
2 090 227
Membres
104 453
dernier inscrit
benjiii88