[RESOLU]Saisie heure dans un Formulaire

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 !

Ternoise

XLDnaute Occasionnel
Bonjour le Forum

Je n'arrive pas a trouver un code VBA pour saisir, simplement, dans un TextBox d'un formulaire un horaire.
Exemple, je tape 825 renvoi 08:25 ou 2153 renvoi 21:53.
La valeur de ce TextBox est ensuite envoyée dans une cellule. Il faut donc qu'elle passe également au format horaire.

Merci de votre aide

David
 
Dernière édition:
Re : Saisie heure dans un Formulaire

Bonsour®
sauf à ajouter quantités de test, cette façon de faire est la porte ouverte aux confusions ...

que faut-il accepter pour:
18
ou bien
875
ou encore
3615

pourquoi ne pas utiliser DTPicker ?
- ou bien 2 TextBoxes une pour les heure et une pour les minutes?
- ou 2 ComboBoxes avec valeurs autorisées.?
 
Re : Saisie heure dans un Formulaire

Bonsoir et merci Modeste

En effet j'avais pas vu cela avec autant de problème !

DTPicker ??? je connais pas mais je suis curieux !

pour l'autre solution, il y a un modèle quelque part ?

il faudrait aussi préciser userform ou non ....
😎
 

Pièces jointes

  • Capture0.jpg
    Capture0.jpg
    56.9 KB · Affichages: 376
  • Capture.JPG
    Capture.JPG
    58.9 KB · Affichages: 202
  • Capture1.JPG
    Capture1.JPG
    33.5 KB · Affichages: 232
  • Capture0.jpg
    Capture0.jpg
    56.9 KB · Affichages: 245
  • Capture.JPG
    Capture.JPG
    58.9 KB · Affichages: 227
  • Capture1.JPG
    Capture1.JPG
    33.5 KB · Affichages: 213
  • Capture0.jpg
    Capture0.jpg
    56.9 KB · Affichages: 219
  • Capture.JPG
    Capture.JPG
    58.9 KB · Affichages: 232
  • Capture1.JPG
    Capture1.JPG
    33.5 KB · Affichages: 221
Re : Saisie heure dans un Formulaire

Merci beaucoup pour les infos

Oui dans un UserForm.

Je pense que je vais plutôt partir pour deux TextBox. (Enfin je vais essayer !!)

Si je comprend, le TextBox1 doit être validé de 0 à 12 et TextBox2 de 0 à 59

Et comment je récupère les deux valeurs dans la même cellule au format HH:MM ?

A savoir que pour TextBox2, c'est juste les 00 ou 15 ou 30 ou 45 qui seront validés !

Cela me parait bien compliqué pour entrer des horaires !
 
Re : [RESOLU] Saisie heure dans un Formulaire

Re mapomme

J'utilisais cette ligne .Cells(ligne, 6) = TextDebutTravail pour valider l'UserForm

Comment la remplacer par la tienne ? Merci de ton aide


Mon petit bout de code

Private Sub CmbValidation_Click()

'--- Positionnement dans la base
ligne = Sheets("Feuil1").[C65000].End(xlUp).Offset(1, 1).Row

'--- Transfert Formulaire dans BD
With Sheets("Feuil1")

.Cells(ligne, 6) = TextDebutTravail

' A remplacer pour la colonne 6
Range("F" & Rows.Count).End(xlUp).Offset(1).NumberFormat = "hh:mm"
Range("F" & Rows.Count).End(xlUp).Offset(1) = TimeSerial(TextBox1, TextBox2, 0)

End With
Unload Me
End Sub
 
Re : [RESOLU] Saisie heure dans un Formulaire

Bonsoir Ternoise,

Re mapomme

J'utilisais cette ligne .Cells(ligne, 6) = TextDebutTravail pour valider l'UserForm

Mon petit bout de code:

Private Sub CmbValidation_Click()

'--- Positionnement dans la base
ligne = Sheets("Feuil1").[C65000].End(xlUp).Offset(1, 1).Row

'--- Transfert Formulaire dans BD
With Sheets("Feuil1")

.Cells(ligne, 6) = TextDebutTravail

' A remplacer pour la colonne 6
Range("F" & Rows.Count).End(xlUp).Offset(1).NumberFormat = "hh:mm"
Range("F" & Rows.Count).End(xlUp).Offset(1) = TimeSerial(TextBox1, TextBox2, 0)

End With
Unload Me
End Sub

A tester:
VB:
Private Sub CmbValidation_Click()

'--- Positionnement dans la base
    ligne = Sheets("Feuil1").[C65000].End(xlUp).Offset(1, 1).Row

'--- Transfert Formulaire dans BD
With Sheets("Feuil1")
   .Cells(ligne, 6).NumberFormat = "hh:mm"
   .Cells(ligne, 6).NumberFormat =  TimeSerial(TextBox1, TextBox2, 0)
End With
Unload Me
End Sub
 
Re : Saisie heure dans un Formulaire

Merci beaucoup. cela fonctionne iimpec ! 😱

Si je peux abuser concernant ce "system" d'heure !

J'ai donc crée 2 saisies d'heure donc : 4 barres de défilement et 4 TextBox, (Horaire de début, Horaire de Fin)

J'aimerais récupérer dans un autre TextBox le temps de travail. Format hh:mm

En formule, je maitrise mais en code ???

Un coup de main ?

Merci beaucoup

David
 
- 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

Retour