Saisir seulement les minutes et secondes

Bonjour à Tous

J'aimerai dans un tableau saisir seulement les minutes et secondes sans être obligé de le saisir de la façon suivante :

EX : pour afficher 9:35 (9 minutes et 35 secondes) je suis obligé de saisir dans excel 00:09:35 et ensuite modifier dans format de cellules puis personnalisée mm:ss afin qu'il affiche correctement le résultat soit ( 9:35)

j'aimerai ne pas à avoir à saisir les 2 00: au départ, uniquement saisir les minute et secondes ( soit 9:35).

J'ai cherché avant de vous ennuyer mais rien à faire je ne trouve pas .

Merci d'avance

Bonjour,

Dans ce cas, il m'est arrivé de mettre 2 zones : une pour les minutes, une pour les secondes, et ajouter une formule

=[@minutes]/24/60+[@secondes]/24/3600
119minutes-secondes.xlsx (10.41 Ko)

bonsoir

merci pour cette solution

mais j'ai saisi beaucoup de formules et si insertion de colonne je ne suis pas sur de garder l’intégralité de mon travail var beaucoup de formules sont figées par $, si il y a une autre solution dans la même cellule je suis preneur.

Merci à vous pour cette solution.

Bonne soirée

Bonjour,

Une autre proposition à étudier.

Un petit apprentissage pour le saisie des heures.

Cdlt.

23rolins.xlsm (16.61 Ko)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
    If Target.ListObject Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    Set rng = Me.ListObjects(1).ListColumns(1).DataBodyRange
    If Not Intersect(Target, rng) Is Nothing Then
        Application.EnableEvents = False
        Target.Value = MilitaryToTime(Target.Value)
        Application.EnableEvents = True
    End If

End Sub

Private Function MilitaryToTime(t)
Dim t2 As Double
    MilitaryToTime = "nombre invalide"
    If Not IsNumeric(t) Then Exit Function
    If t < 0 Or t > 2359 Then Exit Function
    t2 = Int(t / 100) + (((t / 100) - Int(t / 100)) / 0.6)
    t2 = t2 / 24
    MilitaryToTime = t2
End Function

Salut

une contribution :

1 2 3 4
43essai.xlsx (9.07 Ko)

Bonsoir,

aucune de ces solutions ne fonction pour moi

Pas grave les amis

Le but était de saisir que les minutes et secondes dans la même cellule

Ex 9:35 tout simplement mais pour obtenir ce résultat je dois saisir de la façon suivante 00:09:35 c'est ce que je cherche à éviter.

Bonne soirée à tous

Re,

Quid de ma proposition ?

Cdlt.

merci pour cette solution

mais j'ai saisi beaucoup de formules et si insertion de colonne je ne suis pas sur de garder l’intégralité de mon travail var beaucoup de formules sont figées par $, si il y a une autre solution dans la même cellule je suis preneur.

En réalité, c'est l'inverse, il faut ajouter 2 colonnes, celles des minutes et celle des secondes, et mettre dans la colonne actuelle la formule qui donne la valeur en minutes et secondes

Ainsi, rien de changé dans toutes les autres formules, même avec des $, elles s'adapteront automatiquement à la nouvelle position si celle-ci est décalée du fait de l'insertion des 2 colonnes.

Après, vois aussi celle de Jean-Eric en VBA.

Bonjour,

Je ne vois vraiment pas où est le problème ?

Tu veux modifier la valeur dans la cellule même où tu fais la saisie donc, l'utilisation d'une procédure événementielle est inévitable, il te fau juste diviser par 60 !

Private Sub Worksheet_Change(ByVal Target As Range)

    Application.EnableEvents = False
    Target.Value = Target.Value / 60
    Application.EnableEvents = True

End Sub

Bravo Theze, j'allais poster la même solution

avec une proposition supplémentaire pour éviter toute confusion : mettre au format

[mm]"'"ss"''"

Cela peut se faire aussi dans la macro, en ajoutant

target.NumberFormat = "[mm]""'""ss""''"""
capture d ecran 420

Bonjour Steelson !

Oui tu as raison, car pour un utilisateur autre que Rolins, le format attirera son attention mais je pense que si Rolins est le seul utilisateur il saura qu'il travaille en minutes et secondes et pas en heures et minutes

Malgré tout et pour plus "d'universalité" je serai plutôt tenté d'utiliser le format standard pour les heures "hh:mm:ss" :

Application.EnableEvents = False
Target.Value = Target.Value / 60
Target.NumberFormat = "hh:mm:ss"
Application.EnableEvents = True

Bonjour à Tous

Merci pour ces explication,je pensais que je perdrais mes formule si celle-ci étaient figées.

c'est OK avec 2 colonne et la formule sur une 3e colonne qui sera masqué =[@minutes]/24/60+[@secondes]/24/3600 sur une colonne qui sera masqué avec une mise en forme sur la première colonne 4' et 25s ( 4' 25 s) c'est parfait tout fonctionne très bien.

UN GRAND MERCI A TOUS

Bon Dimanche

Rechercher des sujets similaires à "saisir seulement minutes secondes"