Format nombre sur Excel [Résolu/Fermé]

Signaler
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018
-
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
-
Bonjour,

J'aurais besoin de votre aide car je me suis plongé dans des analyses de données en format temps.
Lorsque je récupère celles ci, elles sont au format 00:00.00 et 00.00 et ne sont donc pas reconnues en tant que "nombre".
Quel format devrais je mettre pour traduire ces données "temps" en format "temps standard" 00;00,00 pour pouvoir ensuite les traiter (faire des moyennes, soustraction, etc..).

J'ai déjà trouvé pas mal de réponses mais aucunes ne correspondent vraiment à mon cas. Petit détail, je suis à présent sur Mac (petite précision au cas où cela change quelque chose).


6 réponses

Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
Effectivement, ça pose un problème.
Ca aurait pu être fait par formule mais ça t'obligerait à l'écrire sur toute une colonne et de finir par un copier-collage spécial valeur. Ce qui fait qcq manip...

Je te propose une macro.
Sélectionner la plage à convertir et lancer la macro convertirTemps (ou l'appeler par son raccourci Ctrl+t).
Tu peux traiter sur toutes les feuilles
D'un autre classeur aussi si celui-ci est ouvert, ou bien y coller la macro dans un module (Mise à jour d'une procédure).

https://www.cjoint.com/c/CBmae17QilH

eric
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 76687 internautes nous ont dit merci ce mois-ci

Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

Bonsoir Eric,

J'ai réussi à modifier le format et je t'en remercie.

Par contre je n'arrive pas à copier la macro dans un nouveau fichier, en tant que macro complémentaire..
C'est la première fois que je touche aux macros...

Si jamais tu a un peu de temps pour me donner les étapes à faire, ce serait génial.

Merci pour tout

Anthony
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
- Nouveau fichier
- Alt+F11 pour ouvrir vbe
- clic-droit dans le projet à gauche, insertion module
- coller le code :
Sub convertirTemps()
' traite la plage sélectionnée.
' les temps 'Texte' sont convertis en temps numérique
' 1:02.70 => 1:02.70
' 30.84 => 00:30.84
' les temps numériques affichés avec : sont conservés
'
    Dim c As Range, t As Variant, t2 As Variant
    For Each c In Selection
        If (Not IsNumeric(c) And InStr(c.Text, ":") > 0) Or (IsNumeric(c) And InStr(c.Text, ":") = 0) Then
            t = c.Value
            t = Replace(Replace(t, Chr(160), ""), " ", "")
            Select Case Len(t) - Len(Replace(t, ":", ""))
            Case 0
                t = "0:0:" & t
            Case 1
                t = "0:" & t
            End Select
            c = t
            c.NumberFormat = "mm:ss.00"
        End If
    Next c
End Sub
(j'ai ajouté qcq contrôles)
- retourner sur la feuille
- Alt+F8, 'Options...', choisir le raccourci clavier Ctrl+t
- enregistrer sous... une sauvegarde au format *.xlsm
- enregistrer sous... au format Macro Complémentaire Excel (*.xlam) (ne pas changer le répertoire choisi par excel)

eric
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
PS: un fichier *.xlam est chargé systématiquement à l'ouverture d'excel, il n'est pas visible.
Par contre ses macros et fonctions sont toujours disponibles pour les autres classeurs.
Dans l'onglet Développeur / Compléments' on peut activer/désactiver les macros complémentaires.
eric
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

Ca y est, tout fonctionne parfaitement! J'ai crée le fichier .xlam et j'arrive ensuite à m'en resservir dans les autres fichiers en cochant ce module complémentaire.

Je te remercie pour cette grande aide et le temps que tu m'a accordé.

Anthony
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
ok, bonne continuation :-)
N'oublie pas de mettre en résolu (en haut vers ton titre)
eric
Messages postés
5529
Date d'inscription
lundi 16 avril 2012
Statut
Contributeur
Dernière intervention
30 novembre 2020
529
Bonjour

Utiliser le format heure hh:mm:ss le séparateur sont les deux points sur PC pour MAC ?
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
Bonjour,

et ne sont donc pas reconnues en tant que "nombre".
Donc c'est du texte.
Copier une cellule vide, sélectionner la plage et : collage spécial Addition.
Mettre en suite le format désiré.

eric
Messages postés
2406
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
1 décembre 2020
907
Bonjour,
Si le séparateur de décimales est la virgule il faut commencer par remplacer le point par une virgule. Ceci peut être fait avec Remplacer ou une formule avec substitue.
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

Merci de votre aide mais malgré les solutions proposées, je n'y arrive toujours pas.

Mon souhait est de passer d'un format "texte" 00:00.00 à un format "nombre" 00:00,00
Messages postés
2406
Date d'inscription
mercredi 3 février 2010
Statut
Membre
Dernière intervention
1 décembre 2020
907
Sur PC:
Edition Remplacer Rechercher . (point) Remplacer par , (virgule)
Ou bien en B2=SUBSTITUE(A2;".";",")
Ensuite comme le préconise eriiic:Copier une cellule vide, sélectionner la plage et : collage spécial Addition.
Mettre en suite le format désiré.


À condition qu'une espace (Car 32 ou Car 160) ne perturbe pas.
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

Merci tontong pour ces explications très claires! Ca marche à merveille!
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

Heuu... Encore un petit problème...

Je ne peux pas traduire mes temps de ss.00 en mm:ss,00
Cela fonctionne très bien avec un format d'origine sous forme mm:ss.00 mais pas ss.00
Messages postés
23703
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
1 décembre 2020
6 513
Déposer le fichier xls (réduit au nécessaire et anonymisé) sur cjoint.com et coller ici le lien fourni.
Préciser les cellules concernées.

eric
Messages postés
21
Date d'inscription
mercredi 6 février 2013
Statut
Membre
Dernière intervention
6 juin 2018

https://www.cjoint.com/?3BlwKYXPcei

Voici le lien du document. Les cellules concernées sont les colonnes D

Merci de votre aide!