Vba heures

Résolu/Fermé
Zen - 5 janv. 2015 à 10:22
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 5 janv. 2015 à 17:48
Bonjour,

Je vous souhaite à tous une bonne année :-)

J'ai un petit souci et j'espère pouvoir trouver de l'aide dans ce forum.

Voilà j'ai un tableau de D9:T400 ou je dois saisir des heures et je souhaiterais ne pas à avoir à saisir à chaque fois les ":". Est-ce que qqn à une solution à me proposer en VBA ?

Merci beaucoup:-)



6 réponses

gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
5 janv. 2015 à 10:27
Bonjour,

La touche : n'est pas dans le pavé numérique mais si tu crées une correction automatique qui remplace .. par : cela devrait faciliter ta saisie.
C'est plus simple que de créer une usine à gaz en macro.
1
Merci beaucoup pour cette astuce gbinforme :-) ;-)
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 5/01/2015 à 11:32
Bonjour

Une tentative ... quand même "d'usine à gaz" (salut à gbinforme en passant)
https://www.cjoint.com/?3AfluLjsrdO

Cdlmnt
1
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 684
5 janv. 2015 à 17:48
Bonjour ccm81 et meilleurs voeux pour 2015 !

Bravo pour la réalisation même si je penses que les saisies en dehors des normes excel risquent d'apporter plus de désagréments que d'avantages mais pourquoi ne pas risquer ! ;-)
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
5 janv. 2015 à 14:32
Comme ceci?
https://www.cjoint.com/?3AfoMXeyOfS

Et lorsque j'écris 05:00:00 ca me le transforme en 02:00:00, pourquoi ? :-)

Attention la saisie des temps doit se faire sur 4 chiffres (au format hhmm soit par exemple 0230 pour 2h30mn)

Cdlmnt
1
Superbe, c'est exactement ce que je voulais mais si je n'abuse pas trop Est-ce que ce serait possible de supprimer les secondes. Et lorsque j'écris 05:00:00 ca me le transforme en 02:00:00, pourquoi ? :-)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Superbe, merci beaucoup pour ton aide. :-) ;-) ca va vraiment me faciliter la vie car c'est vraiment plus agréable lorsqu'on a bcp de lignes à saisir. :-)
0
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 2 404
Modifié par ccm81 le 5/01/2015 à 17:10
De rien,

Un peu plus UAG qui te permet de saisir aussi sur 3 chiffres au format hmm où seules les minutes dont sur 2 chiffres ex 203 pour 2h03) et bien sûr sur 4 chiffres comme avant

Private Sub Worksheet_Change(ByVal Target As Range)
Dim h As Long, m As Long, t As Single
If Len(Target.Value) > 4 Or Len(Target.Value) < 3 Then Exit Sub
Application.EnableEvents = False
If Not Intersect(Target, Range(plage)) Is Nothing Then
If Len(Target.Value) = 3 Then
h = Val(Left(Target.Value, 1))
Else
h = Val(Left(Target.Value, 2))
End If
m = Val(Right(Target.Value, 2))
t = h / 24 + m / 1440
Target.NumberFormat = "hh:mm"
Target.Value = t
End If
Application.EnableEvents = True
End Sub

Peux tu mettre le problème à Résolu (en haut à droite de ton premier message)

Bonne fin de journée
0