Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/04/2007, 14h28   #1
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
Par défaut heure dans un textbox

Bonjour,

Je débute en vba, j'ai acquis quelques bases sur l'environnement et le code en me balladant sur les forums et sur les tutos mais je rencontre un petit pb.
J'ai créé un userform (profil) où je veux afficher dans un controle textbox la valeur d'une de mes feuilles de calcul (profil), cette valeur étant une heure type chronomètre. En fait on rentre cette valeur par le biais du même textbox, seulement celui ci me transforme automatiquement mon chrono en un nombre au format scientifique. Et il ne me le garde pas en forme de chrono.

Je voulais savoir s'il y a un moyen de forcer le textbox à enregistrer une valeur au format heure et à le garder sous ce format pour une consultation ultérieure.

J'ai essayé plusieurs solutions sans succés.

Merci
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 14h49   #2
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 935
Points : 30 935
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Bonjour

As-tu essayé avec la fonction Format ?

Starec
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 14h58   #3
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
c'est à dire??

J'ai essayé :


textbox.NumberFormat = "[h]:mm:ss;@"

dans la partie validation de mon bouton valider.
Ca n'a pour conséquence que de transformer un nombre en format heure. Mais moi en fait je veux rentrer une valeur en format heure dans un textbox (HH:MM:SS) et qu'il me redonne cette valeur sous le même format à l'ouverture du userform.

Et c'est un cass tête infernal!!!!!
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 15h01   #4
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 935
Points : 30 935
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Re

Tape Format dans l'aide.

Starec
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 15h17   #5
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
stp doucement, je débute

L'aide sur les formats est bien belle, mais elle ne me dis pas comment faire en sorte qu'à la saisie de mon temps dans mon textbox, ce dernier enregistre bien cette saisie dans le format que je lui indique.
Or je ne sais pas comment faire ça.
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 15h23   #6
Rédacteur/Modérateur
 
Avatar de Philippe JOCHMANS
 
Homme Philippe JOCHMANS
Développeur informatique
Inscription : mai 2005
Messages : 17 625
Détails du profil
Informations personnelles :
Nom : Homme Philippe JOCHMANS
Âge : 44
Localisation : France, Loir et Cher (Centre)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Communication - Médias

Informations forums :
Inscription : mai 2005
Messages : 17 625
Points : 30 935
Points : 30 935
Envoyer un message via MSN à Philippe JOCHMANS Envoyer un message via Skype™ à Philippe JOCHMANS
Re

Essaye ce code

Code :
1
2
3
Private Sub TextBox1_AfterUpdate()
    Me.TextBox1.Value = Format(Me.TextBox1.Value, "hh:mm")
End Sub
TextBox1 étant une textbox dans une UserForm, et adapte le

Starec
__________________
Détaillez vos questions, sinon vous aurez des réponses erronées et vous irez tout droit dans le et lisez les règles sinon
Si vous pensez commencer sans un livre, oublier : livres pour débuter
Vous pouvez consulter mes articles sur Access et PowerPoint
Le blog Office.
Philippe JOCHMANS est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h06   #7
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
merci

Il m'affiche bien ma valeur dans le bon format, seulement maintenant quand je ferme le userform, à la réouverture il m'affiche la valeur rentrée initialement sous forme de nombre.

Je rentre 12:00:00, il me le rentre bien dans ma base de données, mais quand je relance le userform, il m'affiche 0,5 dans mon textbox. Or je voudrais bien qu'il m'affiche 12:00:00

J'ai essayé :
Code :
1
2
3
Private Sub userform2_initialyse()
UserForm2.textbox1.RowSource = Hour(Feuil1.Range("A1").Value) & ":" & Minute(Feuil1.Range("A1").Value) & ":" & Second(Feuil1.Range("A1").Value)
End Sub
Mais ça marche pas
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h17   #8
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Ça... ça peut pas "marcher"
Teste ça
Code :
1
2
3
Private Sub UserForm_Initialize()
UserForm2.TextBox1.Text = Format(CDate(Feuil1.Range("A1").Value), "hh:mm")
End Sub
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h28   #9
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
nan, ça ne "fonctionne" pas

quand je tape 00:20:00, il me rentre cette valeur dans la base, mais affiche aussitôt 1,38888888888889E-02 dans mon textbox.
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h40   #10
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Donc, dans ta cellule, tu as une heure, pas une date. C'est bien. Alors c'est plus simple
Code :
UserForm2.TextBox1.Text = FormatDateTime(Cells(1, 1).Value, vbShortTime)
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h48   #11
Nouveau Membre du Club
 
Inscription : avril 2007
Messages : 106
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 106
Points : 26
Points : 26
t'es un as!!!!

Merci de m'avoir consacré un peu de temps.
Et j'adhère totalement à ta devise :"Tant que tu rames, dis-toi que tu navigues"
C'est aussi la mienne depuis que j'ai touché un clavier.

Seulement y'a des fois où on aime bien ne pas naviguer seul.

A+
Et merci encore

PS : pour finir mon projet, j'aurais certainement encore besoin de conseils et solutions pas toujours évidentes aux novices.
buhrne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/04/2007, 16h53   #12
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Et si je te disais que je suis allé dans l'aide, que j'ai tapé "format" ce qui m'a affiché plein de formatquelquechose et que j'ai choisi dans le tas pour ne pas me tromper de format ? Seulement, j'ai une touche F1 sur mon clavier et je sais que nous ne sommes pas nombreux à l'avoir
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h30.


 
 
 
 
Partenaires

Hébergement Web