IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

formats cellules excel


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 3
    Par défaut formats cellules excel
    Bonjour à tous,

    J'ai un petit souci avec excel et je ne m'en sors pas!!!

    Je suis en train d'éditer un fichier de suivi des heures et je souhaiterais convertir le format de la saisie pour avoir un format d'affichage différent.

    C'est à dire, dans une même cellule je voudrais rentrer un temps en heure et minute (hh:mm) et qu'il soit converti automatiquement (à la fin de la saisie) au format décimal. Par exemple pour un temps de 3:30 (3h30 minutes) saisi, je souhaiterais avoir 3,5 qui s'affiche.

    Merci de votre aide à tous.

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,
    Les heures dans Excel, sous le format hh:mm, cache une décimale qui est un 24ème d'une journée.
    Donc si tu as en A1 "03:30" et que tu mets en B1:
    Tu obtiendras 3,50; par contre à part passer par une autre colonne ou par VBA, je ne sais pas comment faire ça en une fois comme tu le souhaites.
    A+

  3. #3
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut lemaany et le forum
    Le problème est qu'excel ne détecte pas les heures (avec mes maigres connaissances). Il faut donc lui demander de vérifier que la cellule contient un nombre. Et que ça ne concerne qu'une partie de la feuille. Un premier jet :
    Clic-droit sur le nom de l'onglet>> Menu Contextuel>>Visualiser le code et tu colles la macro suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Err_Worksheet_Change
    Dim Plage As Range, Cel As Range
    Set Plage = Intersect(Target, Columns(1))
    If Plage Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For Each Cel In Plage
        If IsNumeric(Cel) Then
            Cel = Hour(Cel) + (Minute(Cel) / 60)
            Cel.numberformat = "General"
        End If
    Next Cel
    Sort_Worksheet_Change:
        Application.EnableEvents = True
        Exit Sub
    Err_Worksheet_Change:
        MsgBox Err.Description, , "Erreur Excel n°" & Err.Number
        Resume Sort_Worksheet_Change
    End Sub
    Tout nombre entré manuellement en colonne 1 (A) sera considéré comme devant être convertit en nombre décimal representant l'heure décimal :
    Si tu entres 3:30 en A1, tu verras le résultat (format standard).
    A+

  4. #4
    Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 3
    Par défaut
    Merci de ta réponse!! ça m'aide vraiment.

    J'aurais une autre question!
    quelle est la syntaxe pour appliquer cette maco a certaines cellules de ma fiche excel??
    C'est à dire, comment le mettre pour les colonnes 16 et 18, sur les lignes allant de 15 à 26 inclus??
    Merci par avance

  5. #5
    Membre Expert
    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    2 130
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 2 130
    Par défaut
    Salut lemaany et le forum
    C'est à dire, comment le mettre pour les colonnes 16 et 18, sur les lignes allant de 15 à 26 inclus??
    C'est-à-dire De P15 à P26 et de R15 à R26 : il suffit de remplacer la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Plage = Intersect(Target, Columns(1))
    par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Plage = Intersect(Target, Range("P15:P26,R15:R26"))
    A+

  6. #6
    Candidat au Club
    Inscrit en
    Septembre 2009
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Septembre 2009
    Messages : 3
    Par défaut
    Merci beaucoup de ton aide précieuse

Discussions similaires

  1. Format cellule Excel
    Par samant9801 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/03/2012, 18h26
  2. Formater cellule Excel
    Par cbods dans le forum VB.NET
    Réponses: 1
    Dernier message: 08/12/2010, 17h01
  3. Format cellules Excel => Listes sharepoint
    Par tomtom09 dans le forum SharePoint
    Réponses: 3
    Dernier message: 19/03/2010, 16h50
  4. Format cellules excell
    Par Thesum dans le forum VB.NET
    Réponses: 1
    Dernier message: 22/05/2008, 14h24
  5. [Delphi 2005] Format cellules Excel
    Par Vulcanos dans le forum API, COM et SDKs
    Réponses: 2
    Dernier message: 24/05/2005, 22h21

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo