[OK]comment ajouter des heures ?

Discussions et dépannage concernant Excel (Toutes versions).

Modérateur : Modérateurs

shyguy
Modérateur
Modérateur
Messages : 1211
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Lyon
Contact :

[OK]comment ajouter des heures ?

Message par shyguy » 20 janv. 2004, 12:41:00

Hello,

je dois faire un tableau à mon travail. Il faut additionner des heures (temps travaillé par 70 personnes). Il y en a énormement.

je dois rentrer les heures sous la forme :
1h15 = 1,15
30 minutes = 0,30

comment je fais pour les additionner et avoir un compte juste ??

exemple :
16+5+4,3+ 2,3+2+5=34,6 et je souhaite que cela affiche 35 h

Merci pour votre aide, j'en ai vraiment besoin...

(o;
Image (soit cool, visite mon site! clique sur l'icone, merci!)

nicko
Modérateur
Modérateur
Messages : 4026
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Entre le dossier et le clavier

Message par nicko » 20 janv. 2004, 13:44:00

Salut Shyguy,

Perso, j'utilise le format heure ([Format] > onglet [nombre] > [heure]

Je sépare les heures et les mn par ":"

Ex : 1h 15 > 1:15

Dans ce format, tu peux effectuer des opérations.

A+
Nicko
Image

shyguy
Modérateur
Modérateur
Messages : 1211
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Lyon
Contact :

Message par shyguy » 20 janv. 2004, 15:12:00

Hello,

non je ne peux pà´ effectuer d'operations...
(j'ai oublié de dire que j'utilise le pack office 97)

Une autre idée ?
Image (soit cool, visite mon site! clique sur l'icone, merci!)

nicopan
Membre habitué
Membre habitué
Messages : 126
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Coutances

Message par nicopan » 20 janv. 2004, 15:37:00

Salut Shyguy,

Va voir ici :
<a href="viewtopic.php?topic=21293&forum=29&13" target="_blank">viewtopic.php?topic=21293&forum=29&13</a>

C'est ds le forum Acces, ms ttes ls reponses, ou la plupart, sont pour Exell

Ciao

Ciao
Image
NiCo

philippe
Modérateur
Modérateur
Messages : 1451
Enregistré le : 02 juin 2005, 23:00:00

Message par philippe » 20 janv. 2004, 17:07:00

Salut.

J'ai retrouvé comment faire.
Mais à§a suppose, pour 1h et 30 min, de rentrer les valeurs :
1 (h) dans une colonne, et 30 (m)dans la suivante.

Supposons que tu veuille additionner :
- les minutes dans la colonne "C"
- les heures dans la colonne "B".

En bas (total) de la colonne minutes tu mets :
=MOD(SOMME(C4:C28);60)

En bas de la colonne heures tu mets :
=ARRONDI.INF(SOMME(C4:C28)/60;0) ----> oui, oui, on totalise bien la colonne "C" dans les deux totaux.

Ce qui a pour effet de totaliser les minutes dans la colonne "C" jusqu'à  60.
Au delà  de 60, la colonne "B", heures, affiche 1, puis 2, etc.
alors que la colonne minutes ne va pas au delà  de 60, et reprend à  1.

C'est pas très clair, je sais.
Il faut en faire l'essai sur une feuille Excel.

<B>Seul Hic :</B>
Si la colonne minutes à  60 min tout rond, le total affiché sera de 60 min (et pas 00),
et le total heures n'augmente pas.
Je suppose qu'on peut contourner à§a avec un "Si".

<hr>

A la réflexion, on peut peut-être faire à§a avec ton mode de saisie 1,30.
Il suffit de compter :
- ce qu'il y a à  droite de la virgule;
- ce qu'il y a à  gauche de la virgule.

@+
Image

Invité

Message par Invité » 20 janv. 2004, 17:10:00

salut
utiliser le système "centième" , si c'est possible....
là , il n'y aura aucun pb d'addition... (1h=100... 1/2 h=0.50), à  moins que le format 1h30 soit vraiment impératif... (là , aucune idée, je travaille en centième)....
salut

philippe
Modérateur
Modérateur
Messages : 1451
Enregistré le : 02 juin 2005, 23:00:00

Message par philippe » 20 janv. 2004, 17:43:00

Je reviens à  mon truc.

La fonction TRONQUE renvoi l'entier du nombre, en laissant de cà´té la partie décimale.

Par exemple si on saisit 2,15 dans la cellule B6 :
=TRONQUE(B6;0)
renvoi la valeur 2 ------> le ,15 a disparu.

En combinant "Tronque" avec ce que j'ai mis ci-dessus, on peut arriver à  totaliser tout à§a.

------------------

Mais.
Je ne sais pas du tout s'il existe une Fonction pour tronquer le chiffre entier, afin de ne rester qu'avec la partie décimale.
Y a t il un bon en Excel parmi nous ?

@+
Image

philippe
Modérateur
Modérateur
Messages : 1451
Enregistré le : 02 juin 2005, 23:00:00

Message par philippe » 20 janv. 2004, 18:20:00

Une étape de plus.

Cellule B6 nous avons 2,15
Cellule B30 c'est le résultat de l'opération
=TRONQUE(B6;0)
donne 2 dans la cellule B30 ----> en B6 il y a toujours 2,15

Soustraction : B6 (2,15) moins B30 (2) = 0,15
soit =B6-B30

Multiplication : 0,15 x 100 = 15 ---> et nous voila avec nos 15 min !
soit =(B6-B30)*100

A tout à  l'heure
Philippe.

Invité

Message par Invité » 20 janv. 2004, 20:13:00

Salut, Shyguy.

C'est bon. Mais il faut suivre.

Colonne B2 à  B26 : la saisie de tes données au format 1,30 / 2,15 / 1,05 / etc. (pour une personne).
Cellule B28 : le total de tes heures.
Cellule C28 : le total de tes minutes.

En cellule B28 :
=(TRONQUE(((SOMME(B2:B28)-(TRONQUE(SOMME(B2:B28))))*100)/60))+(TRONQUE(SOMME(B2:B28)))

En cellule C28 :
=MOD(((SOMME(B2:B28)-(TRONQUE(SOMME(B2:B28))))*100);60)


Tu peux maintenant entrer tes données sous forme de décimales.
Et merci à  Anonyme qui m'a mis sur la voie avec ses décimales à  lui.

(un peu long, car j'ai passé 1h 30 à  tourner en rond avec une référence circulaire).


Ooouuppss.
J'ai été Déconnecté.

@+
Philippe.

Kitty
Membre hyperactif
Membre hyperactif
Messages : 771
Enregistré le : 02 juin 2005, 23:00:00
Localisation : CorbeauxLand

Message par Kitty » 20 janv. 2004, 20:15:00

Bonsoir Shyguy,

Je te propose l'exemple suivant :

<IMG SRC="userimg/(3884)Snap128.jpg" BORDER="0">

La colonne B contient les heures que tu saisies
1.30 = 1h 30mn
7.05 = 7h 05mn

Les colonnes C et D ne sont là  que pour effectuer des calculs intermédiaires. Elles peuvent être masquées.
La colonne C extrait la valeur "heure" de la colonne B
La colonne D extrait la valeur "minute" de la colonne B

Formule de C2 à  C4, exemple pour C2 ..... = ENT(B2)
Formule de D2 à  D4, exemple pour D2 ..... = (B2-ENT(B2))*100

En C7, on fait la somme des heures extraites. Formule ..... = SOMME(C2:C6)
En D7, on fait la somme des minutes extraites. Formule ..... = SOMME(D2:D6)

En B7, on reconstitue la somme totale (heures + minutes). La fonction est ...
=C7+(ENT(D7/60))+((D7-((ENT(D7/60))*60))/100)

Et voilou.

Je n'ai utilisé que des fonctions simples (ENT = partie entière de ; SOMME = somme de)

Pour sà»r, les connaisseurs d'Excel pourront simplifier tout à§a. En l'état, à§a fonctionne correctement !!

PS: Chez moi, le séparateur décimal est le point. Je pense que si tu as utilisé la virgule, c'est que le séparateur décimal est configuré comme à§a chez toi.

Bye,
Kitty
Image

philippe
Modérateur
Modérateur
Messages : 1451
Enregistré le : 02 juin 2005, 23:00:00

Message par philippe » 20 janv. 2004, 20:21:00

Salut.

Tu as maintenant 2 faà§ons de faire, Shyguy.
Et je me suis amusé comme un fou à  faire la mienne.
@+
Image

shyguy
Modérateur
Modérateur
Messages : 1211
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Lyon
Contact :

Message par shyguy » 21 janv. 2004, 11:03:00

Hello,

merci les gars. j'ai hélas pas mal d'imperatif a respecter. ils sont persuadé que je suis le dieu de l'excel ici... (ce qui n'est pà´ le cas!).

je DOIS avoir un affichage unique heure minutes, et je ne peux pas renter 0,50 au lieux de 0,30. Je dois être précis à  la minutes près (les heures sup des collègues). et je dois faire des totaux en colonne et ligne...

je vais étudier vos propositions. sachant donc que je suis obliger de rejeter la solution heure et minutes séparées. (désolé Kitty)

merci encore.
Image (soit cool, visite mon site! clique sur l'icone, merci!)

shyguy
Modérateur
Modérateur
Messages : 1211
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Lyon
Contact :

Message par shyguy » 21 janv. 2004, 12:22:00

Hello,

je me suis débrouiller avec la soultion de Philippe !
Merci à  tous!

(resultat sur 2 colonnes et 2 lignes, mais mon chef devra s'en contempter!)

Merci encore !
Image (soit cool, visite mon site! clique sur l'icone, merci!)

Kitty
Membre hyperactif
Membre hyperactif
Messages : 771
Enregistré le : 02 juin 2005, 23:00:00
Localisation : CorbeauxLand

Message par Kitty » 21 janv. 2004, 13:22:00

Bonjour Shyguy,

Je crois détenir la solution miracle qui devrait répondre à  ton attente ...
Je vais essayer d'être aussi explitif que possible afin que tu comprennes au mieux la manip à  réaliser.

Dans un premier temps, tu définis une zone de saisie (zone dans laquelle tu entreras tes temps).
Tu sélectionnes ta zone puis tu lui attribues un nom. Dans mon exemple, elle s'appelle "ZoneDuree"

Ensuite, tu définis la cellule dans laquelle devra s'afficher le total des heures; tu lui attribues également un nom. Dans mon exemple, elle s'appelle "TotalDuree"

Maintenant :
1) Tu entres dans l'éditeur Visual Basic (outils / macros / Visual Basic Editor)
2) Dans le fenêtre de projet, tu sélectionnes ta feuille. Dans mon exemple, c'est "Feuil1"
3) Dans le fenêtre de code, section "Général" / "Déclarations", tu tapes le code suivant :
<TABLE BORDER=0 ALIGN=CENTER WIDTH=85%><TR><TD><font size=-1><b>Citation :</b></font></TD></TR></TABLE><TABLE BORDER=1 CELLPADDING=10 BORDERCOLOR=#FF0000 ALIGN=CENTER WIDTH=85%><TR BGCOLOR=#F3F2F4><TD><FONT SIZE=-1>Private Sub CalculTotalDuree()
Dim xMinute, xHeure, xTotalMinute, xTotalHeure
Dim xTotalDuree, xHeureMinute, xResteMinute
xTotalHeure = 0
xTotalMinute = 0
xTotalDuree = 0
For Each Item In Worksheets("Feuil1").Range("ZoneDuree")
xHeure = Int(Item)
xMinute = Item - xHeure
xTotalHeure = xTotalHeure + xHeure
xTotalMinute = xTotalMinute + (xMinute * 100)
Next
xHeureMinute = Int(xTotalMinute / 60)
xTotalHeure = xTotalHeure + xHeureMinute
xResteMinute = xTotalMinute - (xHeureMinute * 60)
Worksheets("Feuil1").Range("TotalDuree").Value = xTotalHeure + (xResteMinute / 100)
End Sub</FONT></TD></TR></TABLE>
4) Dans la fenêtre de code, section "Worksheet" / "Change", tu tapes le code suivant :
<TABLE BORDER=0 ALIGN=CENTER WIDTH=85%><TR><TD><font size=-1><b>Citation :</b></font></TD></TR></TABLE><TABLE BORDER=1 CELLPADDING=10 BORDERCOLOR=#FF0000 ALIGN=CENTER WIDTH=85%><TR BGCOLOR=#F3F2F4><TD><FONT SIZE=-1>CalculTotalDuree</FONT></TD></TR></TABLE>
5) Tu enregistres ton classeur (pour ne pas perdre tes modifs)

A chaque fois que tu modifieras quelque chose sur ta feuille, le recalcul automatique du total des heures sera lancé.

PS: Je te prépare des screenshots et je les insèrerai ici dès que je les aurai commenté.

<B>(édité à  13:45)</B>

Voici deux screenshots :

<IMG SRC="userimg/(3884)Capture1.jpg" BORDER="0">

La zone encadrée en rouge correspond à  la zone de saisie, définie avec le nom "ZoneDuree"
Pour attribuer le nom à  cette zone :
1) Sélectionner la zone. Dans l'exemple : de B2 à  B5
2) menu Insérer / Nom / Définir
3) Saisir "ZoneDuree" (sans les guillemets) dans "Noms dans le classeur".
Vérifier que la référence porte bien sur =Feuil1!$B$2:$B$5 (pour mon exemple)
4) Valider par OK et retourner sur la feuille

La zone encadrée en bleu correspond à  l'affichage du total des heures, définie avec le nom "TotalDuree"
Pour attribuer le nom à  cette zone, suivre le même principe que précédemment.
Vérifier que la référence porte bien sur =Feuil1!$B$7 (pour mon exemple)

Pour le code :

<IMG SRC="userimg/(3884)Capture2.jpg" BORDER="0">

J'espère que c'est suffisamment explicite pour toi. Si tu as un quelconque souci, contacte-moi.

Bye,
Kitty
Image

shyguy
Modérateur
Modérateur
Messages : 1211
Enregistré le : 02 juin 2005, 23:00:00
Localisation : Lyon
Contact :

Message par shyguy » 10 févr. 2004, 10:44:00

Hello Kitty,

je te repond en retard! )o;

je ne maitrise pà´ du tout le VB, je n'arrive pas à  utiliser ta solution, qui est pourtant allechante!

On en reparle par MP.

Merci bien à  toi d'avori chercher en tout cas!

(o;
Image (soit cool, visite mon site! clique sur l'icone, merci!)

Répondre

Retourner vers « Excel »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité