format heure de feuille vers label et inv

CB60

XLDnaute Barbatruc
Bonsoir le Forum,
J'ai un format (' hh:mm:ss') dans une colonne d'une feuille, je souhaite le faire apparaitre sur mon USF soit en textbox ou encore label mais je ne trouve pas la solution, que ce soit à l'initialisation ou alors lorsque j'appel un combobox, cette heures et toujours en decimale.
Si quelqu'un peux me donner la façon de faire.
merci d'avance
 

Marco60

XLDnaute Occasionnel
Salut CB60,
je te fais parvenir un fichier que m'avait concocté MyDearFriend qui permet d'avoir l'heure dans un Label ou TextBox.

Par contre elle n'apparait pas dans la feuille de calculs.

A+

Marc [file name=mDF_HeureDansUsf_20060214233837.zip size=15393]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/mDF_HeureDansUsf_20060214233837.zip[/file]
 

Pièces jointes

  • mDF_HeureDansUsf_20060214233837.zip
    15 KB · Affichages: 36

CB60

XLDnaute Barbatruc
Bonjour MDF, Marco60,
Je suis au boulot!!! je regarde ce soir si les propositions peuvent me servir, sinon je mettrais l'application que je suis en train d'adapter sur ce fil afin d'eclairer vos esprits.
Merci pour l'aide d'un petit nouveau en VBA
 

CB60

XLDnaute Barbatruc
Bonsoir a tous
les deux proposition qui mon était faite, ne fonctionne pas. Je vous joint donc mon fichier qui débute, c'est un fichier de Denis Michon que j'essais d'adapter. le probléme se situe sur le Label5. tous les boutons ne sont pas encore fonctionnels mais j'avance doucement.
Merci de votre regard constructeur.
Bruno
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir CB60, Marco60 (merci de ton mot Marco, il n'y avait pas de mal ;) ),

CB60, si tu veux que ça puisse fonctionner, encore faut-il que tu définisses ce format à TOUTES les lignes de code mettant à jour ton Label5.Caption !

Par exemple, dans ta procédure ComboBox1_Change() :
Private Sub ComboBox1_Change()
      Label5.Caption = Format(Sheets('Feuil1').Range('a1').Value, 'hh:nn: ss')
      If ComboBox1 = '' Then
            MsgBox ' Vide !'
      Else
            Cells.Find(What:=ComboBox1.Value, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
                        xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
                        , SearchFormat:=False).Activate
            TextBox2 = ActiveCell.Offset(0, 2)
            Label5.Caption = Format(ActiveCell.Offset(0, 1).Value, 'hh:nn: ss')
      End If
End Sub
En ajoutant le code marqué en rouge ça devrait mieux fonctionner.
Il en est de même pour les autres procédures évènementielles de ton Userform...

Cordialement,

Message édité par: myDearFriend!, à: 15/02/2006 23:29
 

CB60

XLDnaute Barbatruc
Bonjour MDF, et le forum
Je te remercie pour les conseils, cela fonctionne à merveille, je les ai déclarés dans l'initialisation, le spinbutton et la combobox et ça fonctionne, il me reste les autres procedure à mettre en place.
Et encore merci.
Bruno
 

myDearFriend!

XLDnaute Barbatruc
Bonsoir CB60, Marco60, Pascal76, le Forum,

C'est volontaire Pascal76...

J'ai pris l'habitude pour la fonction Format() VBA de mentionner 'n' ou 'nn' pour définir les minutes car ça évite les confusions possibles avec le 'm' réservé normalement pour définir le Mois. L'aide VBA mentionne d'ailleurs le 'n' comme symbole pour les minutes dans la section Formats de date/heure définis par l'utilisateur (fonction Format).

Normalement, si tu utlises 'hh:mm: ss', VBA devrait (je crois) être capable de faire la distinction et ça devrait marcher. Toutefois, dans certains cas, tu pourrais obtenir un résultat inattendu...

Pour le vérifier, c'est très simple : par exemple, si tu mets en A1 de la feuille la valeur '16/02/06 21:11:15' et que tu utilises en VBA, le code suivant :
                  Label1.Caption = Format(Range('A1').Value, 'mm')
                  Label2.Caption = Format(Range('A1').Value, 'nn')
Tu obtiendras '02' (le mois) dans le Label1 et '11' (les minutes) dans le Label2.

Moralité : je pense qu'il est préférable d'utiliser la formulation 'n' ou 'nn' pour les minutes car, dans ce cas, tu es sûr que ça marchera à tous les coups !

Cordialement,
 

PascalXLD

XLDnaute Barbatruc
Modérateur
RE

Merci Didier pour ce petit truc dont je n'avais jamais fait attention.

Par contre je me rappelle avoir bien galéré sur un fil où on devait récupéré juste les minutes et secondes et comme tu le dis avec le format 'mm: ss' c'est le mois qui apparait.

Alors merci pour le petit truc

Bonne journée à toi
 

Discussions similaires

Statistiques des forums

Discussions
312 233
Messages
2 086 465
Membres
103 224
dernier inscrit
VieuxSeb