Excel calcul de différence d'heure.

Résolu/Fermé
Utilisateur anonyme - 25 juin 2008 à 16:11
 yodo - 22 juil. 2008 à 12:27
Bonjour,
Mon problème est simple.
Imaginez 3 cellules, a gauche l'heure de début générer par une macro (on clique sur une flèche en haut de la colonne au début), a droite l'heure de fin (également une flèche au dessus de la colonne).
Et là entre les deux colonnes, une colonne dan laquelle je souhaiterai voir aparraitre la différence entre les deux heures.
Bon jusque la pas de problème.
La case de gauche s'appelle: E10 et celle de droite G10.
comme vous vous en doutez pas la peine d'être un génie pour trouver que celle du milieu s'appelle F10
Donc le calcul est le suivant F(10) donc =G(10)-E(10) les 3 cellules étant au format heure excel se débrouille et me sort la différence.
Après un petit arrangement pour les heure "à cheval" sur deux jours: F(10)=G(10)-E(10)+SI(E(10)>G(10);1).
Bref dans l'absolue sa fonctionne mais en réaliter la cellule censé contenir la différence m'affiche en #nom?
je suppose que c'est parce que les données nécessaire au calcul proviennent de macros.
Je pensais donc modifier ma deuxième macro qui est:
ActiveCell.Value = Now
ActiveCell.Offset(0, 1).Activate

afin d'effectuer la différence des deux date (et donc de remplir la cellule du milieu) juste apres avoir demmander a la macro de remplir la deuxième cellule.
le problème est que je ne vois pas trop comme faire pour demander cela à la macro via le VBA.
de Plus je ne vais pas trop me casser la tête a chercher dans cette voie si l'erreur vien d'ailleur.
Sauf que comme je ne connait pas la taille de la colonne et que la feuille n'est pas pour mon utilisation je pense tout de même etre obliger de faire une macro ou du moins de modifier ma deuxième (comme expliquer plus haut) non?


donc pour résumer mes questions:


Le problème de différence de date viens t'il du fait que les composantes du calcul viennent de macro?
ET
Si oui comment puis-je modifier cette macro pour effectuer le calcul "CelluleF=CelluleG-CelluleE+SI(CelluleE>CelluleG;1)apres quelle est remplie le champ de l'heure de fin?

J'espère avoir été assez clair :s
D'en l'attente d'une aide...
Merci d'avance.

3 réponses

lermite222
Messages postés
8700
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 193
25 juin 2008 à 17:31
Bonjour,
Essaye avec la formule..
    =SI(E10>G10;1;G10-E10)

A+
0
Utilisateur anonyme
26 juin 2008 à 09:03
Salut, et merci de ton aide.
En fait j'ai remplacer: F(10)=G(10)-E(10)+SI(E(10)>G(10);1). par F10=G10-E10+SI(E10>G10;1)
Pas trop compris, j'ai juste enlever les () et sa marche...
en tous cas merci quand même ;)
0
Juste un petit mot pour dire pourquoi cela ne marcahait pas. En effet, E(10) n'est pas une référence de cellule et donc logiquement Excel ne pouvait résoudre.
0