VBA Comment faire une somme d'heure

narkott Messages postés 18 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 19 décembre 2005 - 19 déc. 2005 à 08:54
kalobit Messages postés 169 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 7 avril 2008 - 20 déc. 2005 à 15:49
Bonjour à tous et toutes.

J'aimerais savoir si quelqu'un d'entre vous à déjà pu faire ce type de fonction, et si oui comment. En faite je dois parcourir un tableau excel et a chaque fois que la cellule n'est pas vide. Il l'ajoute au résultat précédent. Le réeel problème est que si il y a plus de 23h59 cela fait un jour. On ne peut avoir d'exemple type 35h:45. Et c'est le résultat que je dois avoir.

Si vous pouviez m'aider ça serait super cool.

Merci d'avance à tous et toutes.

4 réponses

narkott Messages postés 18 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 19 décembre 2005 1
19 déc. 2005 à 09:39
Désolé mais je ne voudrais pas que l'on m'oublie et passer en fin de forum.
Héhé
Pas bete la guèpes.
0
narkott Messages postés 18 Date d'inscription jeudi 28 octobre 2004 Statut Membre Dernière intervention 19 décembre 2005 1
19 déc. 2005 à 11:59
Please Help , je masterise pas encore vraiment en vba. Et donc je ne sais pas non plus comment faire pour découper des chaines de caractères ce qui me serait bien pratique. Par exemple pour faire mes calculs et faire une somme.

Merci d'avance.
0
kalobit Messages postés 169 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 7 avril 2008 2
20 déc. 2005 à 15:47
salut,

Voici ma fonction

Function daytoHour(Jours)
Dim nbjours As Integer
Dim nbheures As Integer
Dim nbminutes As Integer
Dim reste As Single
nbjours = Int(Jours)
reste = Jours - nbjours
reste = reste * 24
nbheures = Int(reste)
reste = reste - nbheures
reste = reste * 60
nbminutes = Int(reste)
reste = reste - nbminutes
reste = Round(reste * 60, 0)
nbsecondes = Int(reste)
nbheures = nbheures + 24 * nbjoursIf nbsecondes 0 Then mbsecondes 0: nbminutes = nbminutes + 1If nbminutes 60 Then nbminutes 0: nbheures = nbheures + 1
daytoHour = Format(nbheures & ":" & nbminutes & ":" & nbsecondes, "hh:mm:ss")
End Function

@+++

les fonctions utilisées restent basiques alors je commente pas mais si tu veux plus d'infos, fais moi signe
0
kalobit Messages postés 169 Date d'inscription mardi 15 juillet 2003 Statut Membre Dernière intervention 7 avril 2008 2
20 déc. 2005 à 15:49
ha oui, j'oubliais de te dire que la somme ressorties par vba est en jour, d'où ma fonction

pouir les chaines de caractères, regarde les fonctions suivantes :
left
right
mid
instr
trim

voilà +++
0
Rejoignez-nous