Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 08/02/2010, 16h47   #1
Membre du Club
 
Inscription : juin 2008
Messages : 280
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 280
Points : 46
Points : 46
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!
djoumusic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 17h30   #2
Invité régulier
 
Inscription : janvier 2010
Messages : 22
Détails du profil
Informations forums :
Inscription : janvier 2010
Messages : 22
Points : 8
Points : 8
Bonjour,
Mets cette formule dans ta cellule d'arrivée:
Citation:
=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+
patyom est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/02/2010, 20h47   #3
Membre du Club
 
Inscription : juin 2008
Messages : 280
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 280
Points : 46
Points : 46
j'ai rentré ce code
Code :
=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 !
djoumusic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 12h39   #4
Rédacteur
 
Avatar de Ormonth
 
Homme Didier GONARD
Formateur Développeur Office - indépendant
Inscription : février 2008
Messages : 2 201
Détails du profil
Informations personnelles :
Nom : Homme Didier GONARD
Localisation : France, Loire Atlantique (Pays de la Loire)

Informations professionnelles :
Activité : Formateur Développeur Office - indépendant

Informations forums :
Inscription : février 2008
Messages : 2 201
Points : 4 235
Points : 4 235
Bonjour,

Citation:
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 :
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
__________________
Didier Gonard

Ps :
Pour noter positivement ou négativement un post, vous pouvez cliquer sur les pouces en bas à droite !
Tutoriels : Voir la liste de mes tutoriels et mon site pro sur ma Page DVP
N'oubliez pas de mettre : ..quand c'est le cas !
Ormonth est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/02/2010, 13h21   #5
Membre du Club
 
Inscription : juin 2008
Messages : 280
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 280
Points : 46
Points : 46
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...
djoumusic est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 13h13.


 
 
 
 
Partenaires

Hébergement Web