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

Macros et VBA Excel Discussion :

convertir heure ! un peu particulier [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut convertir heure ! un peu particulier
    Bonjour,
    j'ai un fichier excel, ou le format des heures, est un format personaliser du type "00,00".
    ce qui fait que pour "06h15", on doit écrire "06,15"
    j'ai besoin de recuperer cette valeur de cellule "06,15" dans une autre , mais de type "hh:mm" et donc lire "06:15"

    je n'y arrive pas..
    je pense qu'il faut personnaliser le format de la cellule ET
    passer par un calcul... aussi..
    mais je nage...
    libre à vos idées !!

    cdt

    julien!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    95
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 95
    Par défaut
    Bonjour,
    Mets cette formule dans ta cellule d'arrivée:
    =IF(FIND(",";AC38;1);LEFT(AC38;FIND(",";AC38;1)-1)&":"&RIGHT(AC38;LEN(AC38)-FIND(",";AC38;1));"")
    Comme cela quelque soit la longueur de ta valeur de départ (du genre 6,15 ou 6,1) à l'arrivée tu auras tjr un format avec les ":"

    Nota : AC38 c'est la cellule à traiter.

    A+

  3. #3
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut
    j'ai rentré ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =IF(FIND(",";C7;1);LEFT(C7;FIND(",";C7;1)-1)&":"&RIGHT(C7;LEN(C7)-FIND(",";C7;1));"")
    dans la cellule...
    j'ai #NOM? en resultat..
    j'ai vu que j'ai dit que j'éetais sous 2007, c'est une erreur je suis sous 2003 !!!
    de plus je n'ai jamais vu de formule avec une fonction commencant par IF mais plutot SI...

    ca ne marche pas...
    Mais ya peut etre + simple... et peut etre une logique, plutot que d'essayer de compter les caractere pour faire de la recup..

    si y a pas d'autre solution, je suis preneur...
    biensur !

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    j'ai vu que j'ai dit que j'éetais sous 2007, c'est une erreur je suis sous 2003 !!!
    tu dois avoir possibilité de modifier la balise sur ton message d'origine en tant que créateur...

    sinon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub Mutation()
    Dim vnttbo_H1 As Variant
    Dim dtm_H1 As Date
     
    vnttbo_H1 = Split(Cells(5, 3), ",")
    dtm_H1 = TimeSerial(vnttbo_H1(0), vnttbo_H1(1), 0)
    Cells(5, 5) = dtm_H1 'cells(5,5) foramatée au préalable en heure 13:30
    End Sub
    cordialement,

    Didier

  5. #5
    Membre éclairé

    Homme Profil pro
    Restaurateur
    Inscrit en
    Juin 2008
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Restaurateur
    Secteur : Alimentation

    Informations forums :
    Inscription : Juin 2008
    Messages : 316
    Billets dans le blog
    1
    Par défaut
    en fait j'ai fait + simple,

    j'ai multiplier la cellule par 100
    pour 6,15 j'obtiens 615 et je met la cellule en type perso "0000" ce qui me donne "0600" ce qui me va tres bien !

    mille merci quand même
    c'est avec toutes les idées qu'on en créée d'autres...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT]Tableau un peu particulier
    Par JohnBlatt dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 21/06/2006, 18h14
  2. Un tri un peu particulier
    Par GregPeck dans le forum Requêtes
    Réponses: 3
    Dernier message: 08/06/2006, 15h32
  3. Menu un peu particulier avec des onmouseover
    Par Jinroh77 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 21/02/2006, 14h30
  4. #define un peu particulier
    Par greuh dans le forum C
    Réponses: 14
    Dernier message: 12/10/2005, 16h42
  5. Réponses: 2
    Dernier message: 05/01/2004, 11h23

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