Entrer un temps style 01:12:45 sans devoir saisir les deux point

Résolu/Fermé
Jrm - 13 janv. 2015 à 10:35
 Jrm - 14 janv. 2015 à 10:16
Bonjour,

Je souhaiterai entrer un temps

exemple : 1h12min45secc

De la façon suivante 011245 mais qu'il s'affiche automatiquement sous la forme 01:12:45

Je vous avoue que je coince un peu, le faire en VBA ou alors avec une formule ? :-(

Merci de vote aide

A voir également:

3 réponses

Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
13 janv. 2015 à 14:58
Bonjour,

Par formule, tu peux t'inspirer de ça. https://answers.microsoft.com/en-us/office/forum/office_2007-excel/how-can-i-convert-from-hhmmss-to-hhmmss-in-excel/0506100b-9ab8-465d-a858-118abac522a2
En VBA, ça doit être faisable, pas très compliqué via un UserForm mais a priori ralentit le classeur si saisie directe dans les cellules.

A+
0
Meci,

je n'ai pas tout compris en anglais, mais en essayant la formule qu'il donne :

=--TEXT(A1,"00\:00\:00")

Excel la refuse (bien entendu je remplace a1 par la case correspondante dans mon tableau.
0
Zoul67 Messages postés 1959 Date d'inscription lundi 3 mai 2010 Statut Membre Dernière intervention 30 janvier 2023 149
13 janv. 2015 à 15:57
=TEXTE(A1;"00\:00\:00")
(oui, TEXT devient TEXTE !) ou l'autre astuce avec MOD

puis mettre au format la cellule en hh:mm:ss
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
13 janv. 2015 à 15:36
Bonjour,

Voilà en vba, a mettre dans la feuille concernée, pour la cellule A1, a adapter:

Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then
MonPremierTableau
    End If
End Sub
Sub MonPremierTableau()
    'Définit la taille du tableau et le type de données.
    Dim NomTableau(2) As String
    Dim i As Integer
    Dim chaine As String
    chaine = Range("A1").Value
   If Len(chaine) = 5 Then
   'Alimente les éléments du tableau
    NomTableau(0) = Left(chaine, 1)
    NomTableau(1) = Mid(chaine, 2, 2)
    NomTableau(2) = Right(chaine, 2)
   Else
    'Alimente les éléments du tableau
    NomTableau(0) = Left(chaine, 2)
    NomTableau(1) = Mid(chaine, 3, 2)
    NomTableau(2) = Right(chaine, 2)
       End If
Range("A1").Value = NomTableau(0) & ":" & NomTableau(1) & ":" & NomTableau(2)
End Sub


J'ai été obligé de faire 2 options, car 0 en premier est supprimé
0
Merci à vous tous pour les solutions, ça marche au top !


Merci encore
0