Microsoft 365 Affichage contenu ListBox format heure > 24 heures

AIXELS

XLDnaute Occasionnel
Bonjour à tous les Amis du Forum:)
Je reviens une fois de plus vers vous pour vous demander votre aide.
J'ai un fichier contenant 12 Feuilles, une pour chaque mois de l'année.
J'ai créé un Userform pour afficher le récapitulatif des heures pour chaque mois
et chaque activité (A, B, C, etc.). Je vous joins le mois de janvier
J'aurais souhaité la ligne de commande qui afficherait le total du mois au format :
exemple : 32:30
Mon code, m'affiche un format en décimal. Voir le fichier joint.

Par avance, merci pour votre aide.
Bien cordialement
 

Pièces jointes

  • Format heures.xlsm
    34.3 KB · Affichages: 5

Jacky67

XLDnaute Barbatruc
Bonjour à tous les Amis du Forum:)
Je reviens une fois de plus vers vous pour vous demander votre aide.
J'ai un fichier contenant 12 Feuilles, une pour chaque mois de l'année.
J'ai créé un Userform pour afficher le récapitulatif des heures pour chaque mois
et chaque activité (A, B, C, etc.). Je vous joins le mois de janvier
J'aurais souhaité la ligne de commande qui afficherait le total du mois au format :
exemple : 32:30
Mon code, m'affiche un format en décimal. Voir le fichier joint.

Par avance, merci pour votre aide.
Bien cordialement
Bonjour,
Essaye en ajoutant "Text"
Me.TextBox1.Value = Sheets("JANVIER").[B35].Text
 

patricktoulon

XLDnaute Barbatruc
pour le vba tout simplement application.text exactement le même principe que la fonction texte d'excel
exemple ici je vais additionner deux temps
VB:
Sub test()
    h1 = TimeValue("17:40:35")
    h2 = TimeValue("12:43:22")
    MsgBox Application.Text(h1 + h2, "[hh]:mm:ss") 'c'est les "[ ]" qui font le job  d"ans la  fonction texte de l'application
End Sub
;)
 

Jacky67

XLDnaute Barbatruc
Est-il possible de remplir tous les TexTBox en tenant compte de 12 mois
à savoir de JANVIER à DÉCEMBRE. C'est la même disposition pour les
12 feuilles.
Par avance merci pour aide.
Cordialement
RE..
Essaye comme ceci

VB:
Private Sub UserForm_Initialize()
 Dim i, j, x
    For i = 1 To 12
        For j = 2 To 8
            x = x + 1
           Controls("textbox" & x) = Sheets(UCase(Format(DateSerial(1, i, 1), "mmmm"))).Cells(35, j).Text
          Next
    Next
End Sub
Dans l'exemple les feuilles sont crées sans tenir compte de l'exactitude du contenu.
 

Pièces jointes

  • Format heures V1.xlsm
    88.1 KB · Affichages: 3
Dernière édition:

AIXELS

XLDnaute Occasionnel
Bonjour @Jacky67
Merci pour ta réponse et ton aide.
J'ai passé l'après-midi d'hier à remplir les TextBox
sur l'exemple de ta réponse !
En 9 lignes, tu as résolu le problème. Encore Merci.
7 x 12 = 84 lignes pour arriver à ton résultat.
Le chemin est long et j'en suis conscient.
Merci à tous les Bénévoles. 🙏
Bien cordialement.

VB:
'JANVIER
    UsfRecap.TextBox1.Value = Sheets("JANVIER").[B2].Text
    UsfRecap.TextBox2.Value = Sheets("JANVIER").[C2].Text
    UsfRecap.TextBox3.Value = Sheets("JANVIER").[D2].Text
    UsfRecap.TextBox4.Value = Sheets("JANVIER").[E2].Text
    UsfRecap.TextBox5.Value = Sheets("JANVIER").[F2].Text
    UsfRecap.TextBox6.Value = Sheets("JANVIER").[G2].Text
    UsfRecap.TextBox7.Value = Sheets("JANVIER").[H2].Text
 

AIXELS

XLDnaute Occasionnel
Bonjour @Jacky67 et tous les Amis du Forum. :)
@Jacky67 je viens de relever une anomalie sur la version 1 et 2
Tous les mois sur les 12 onglets sont à la date de janvier.
En l'adaptant sur mon projet, je me suis aperçu que les mois qui
qui n'ont pas 31 jours, n'affichent pas les données.
Je te joins la V1 et V2 corrigés aux bonnes dates.
Les données comme tu peux le constater, ne s'affichent pas.
Merci pour ton aide.
Bien cordialement.
 

Pièces jointes

  • Format heures V2.xlsm
    87.9 KB · Affichages: 1
  • Format heures V1.xlsm
    84.7 KB · Affichages: 1

Jacky67

XLDnaute Barbatruc
Bonjour @Jacky67 et tous les Amis du Forum. :)
@Jacky67 je viens de relever une anomalie sur la version 1 et 2
Tous les mois sur les 12 onglets sont à la date de janvier.
En l'adaptant sur mon projet, je me suis aperçu que les mois qui
qui n'ont pas 31 jours, n'affichent pas les données.
Je te joins la V1 et V2 corrigés aux bonnes dates.
Les données comme tu peux le constater, ne s'affichent pas.
Merci pour ton aide.
Bien cordialement.
Re..
Dans mon exemple le total du mois devait impérativement se trouver en ligne 35.
La version 3 se charge de trouver la ligne "TOTAL"
 

Pièces jointes

  • Format heures V3.xlsm
    87.1 KB · Affichages: 4

AIXELS

XLDnaute Occasionnel
Merci @Jacky67 pour le retour. 🙏
Les données sont toutes prises en compte.
Désolé, je me suis mal exprimé.
En quoi le fait de déclarer le Total, influe sur la suite du résultat ?
Autre requête, est-il possible de mettre en fond vert les TextBox du mois en cours ?
Par avance merci pour aide aide.
Bien cordialement.
 

Jacky67

XLDnaute Barbatruc
En quoi le fait de déclarer le Total, influe sur la suite du résultat ?
Autre requête, est-il possible de mettre en fond vert les TextBox du mois en cours ?

Par avance merci pour aide aide.
Bien cordialement.
Re..
??? Ben, les lignes de "total" ne sont pas toute sur la même ligne
Ce code recherche la ligne "total" et place le numéro de la ligne dans la variable "lig"
lig = Application.Match("TOTAL", Sheets(Month(DateSerial(1, i, 1))).[a:a], 0)

La version 4 met en couleur la ligne du mois en cours:)
Y a t'il encore des questions à tiroirs..o_O
 

Pièces jointes

  • Format heures V4.xlsm
    88.3 KB · Affichages: 4
Dernière édition:

Statistiques des forums

Discussions
312 864
Messages
2 093 014
Membres
105 607
dernier inscrit
Grospsdresbois