convertir une durée en texte

Caropier

XLDnaute Nouveau
Bonjour à tous,

Je rame avec une formule que je veux rédiger sans macro :

Je souhaite traduire une durée en texte, selon 2 cas :
- soit le collaborateur est en CDI et il travaille 7h40 par jour
- Soit le collaborateur est apprenti et il travaille 7h par jour

Du coup, s'il a travaillé 43h30 :
- s'il est en CDI il aura travaillé 1 semaine 6h et 30 min
- S'il est apprenti il aura travaillé 1 semaine 1 jour 1 heure et 30 min

Pouvez-vous m'aider svp?

Merci par avance :) (et bon we !)
 
Dernière modification par un modérateur:

Caropier

XLDnaute Nouveau
Re : convertir une durée en texte

AH oui j'ai oublié de préciser : voici ce que j'ai déjà (bon je vous l'accorde c'est une usine à gaz :( et en plus ca ne marche pas : pour 195h10 ca me donne en CDI 5 semaines 3 heures et 30 minutes ce qui me ferait en fait 188h30 et non 195h10 :( :

En bref ca marche pour les apprentis mais pas pour les CDI. Je dois avoir un pb avec mes 7h40 quotidiennes.


=SI(A9="CDI/CDD";SUPPRESPACE(TEXTE(ENT(ARRONDI.INF(F14/TEMPSVAL("7:40");0)/5);"[>1]0"" semaines "";[>]""1 semaine"";")&TEXTE(MOD(ARRONDI.INF(F14/TEMPSVAL("7:40");0);5);"[>1]0"" jours "";[>]"" 1 jour "";")&TEXTE( HEURE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:40");0)*TEMPSVAL("7:40")));"[>1]0"" heures "";[>]"" 1 heure "";") & TEXTE(MINUTE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:40");0)*TEMPSVAL("7:40")));"[>1]0"" minutes "";[>]""1 minute "";"));SUPPRESPACE(TEXTE(ENT(ARRONDI.INF(F14/TEMPSVAL("7:00");0)/5);"[>1]0"" semaines "";[>]""1 semaine"";")&TEXTE(MOD(ARRONDI.INF(F14/TEMPSVAL("7:00");0);5);"[>1]0"" jours "";[>]"" 1 jour "";")&TEXTE( HEURE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:00");0)*TEMPSVAL("7:00")));"[>1]0"" heures "";[>]"" 1 heure "";") & TEXTE(MINUTE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:00");0)*TEMPSVAL("7:00")));"[>1]0"" minutes "";[>]""1 minute "";")))
 
Dernière modification par un modérateur:

Victor21

XLDnaute Barbatruc
Re : convertir une durée en texte

Bonsoir, Caropier, bienvenue sur XLD ses us et ses coutumes.

Nous ne pouvons pas vous proposer de formule adaptée si vous ne nous fournissez pas de fichier exemple : Comment sont présentées vos données ? Comment sont-elles formatées...

IMPORTANT : - ILLUSTREZ VOTRE DEMANDE : Afin de faciliter la compréhension de votre demande il est conseillé de joindre un PETIT fichier qui illustre votre question précise et montre les résultats que vous cherchez à obtenir.
Pour l'envoyer, cliquez sur le trombone ci-dessous ou sur le bouton "Gérer les pièces jointes" dans la zone "Options supplémentaires".Ensuite, cliquez sur le bouton "Parcourir" et sélectionnez-le (après l'avoir compressé s'il dépasse les 250Ko).
 

gosselien

XLDnaute Barbatruc
Re : convertir une durée en texte

=SI(A9="CDI/CDD";SUPPRESPACE(TEXTE(ENT(ARRONDI.INF(F14/TEMPSVAL("7:40");0)/5);"[>1]0"" semaines "";[>]""1 semaine"";")&TEXTE(MOD(ARRONDI.INF(F14/TEMPSVAL("7:40");0);5);"[>1]0"" jours "";[>]"" 1 jour "";")&TEXTE( HEURE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:40");0)*TEMPSVAL("7:40")));"[>1]0"" heures "";[>]"" 1 heure "";") & TEXTE(MINUTE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:40");0)*TEMPSVAL("7:40")));"[>1]0"" minutes "";[>]""1 minute "";"));SUPPRESPACE(TEXTE(ENT(ARRONDI.INF(F14/TEMPSVAL("7:00");0)/5);"[>1]0"" semaines "";[>]""1 semaine"";")&TEXTE(MOD(ARRONDI.INF(F14/TEMPSVAL("7:00");0);5);"[>1]0"" jours "";[>]"" 1 jour "";")&TEXTE( HEURE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:00");0)*TEMPSVAL("7:00")));"[>1]0"" heures "";[>]"" 1 heure "";") & TEXTE(MINUTE(F14-(ARRONDI.INF(F14/TEMPSVAL("7:00");0)*TEMPSVAL("7:00")));"[>1]0"" minutes "";[>]""1 minute "";")))

c'est simple pourtant :)

P.
 

Discussions similaires

Statistiques des forums

Discussions
312 684
Messages
2 090 917
Membres
104 699
dernier inscrit
Azyra