Fonction

Fermé
Jessi4456 Messages postés 3 Date d'inscription lundi 20 août 2007 Statut Membre Dernière intervention 12 novembre 2007 - 20 août 2007 à 20:52
Raymond PENTIER Messages postés 57157 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 28 mars 2023 - 21 août 2007 à 06:51
Bonsoir,

En partant d'un tableau Excel regroupant les congés par date et par employé (une case représentant un jour ; une ligne par employé), je voudrais - sur une autre feuille - qu'une formule me donne la date du 20ème jour de congé (si le nombre de jours de congés est égal ou supérieur à 20).

Mon tableau donne a peu près ça :
01/06/07 02/06/07 03/06/07
Jules x x x
Jim x x
Jojo x

J'ai déjà réussi à créer une formule qui calcule le nombre de jours de congés par employé en fonction de la date de début et de fin de la plage (en utilisant les fonctions "adresse", "index" et "equiv"), mais là je sèche !

Merci de votre aide,
Jessi4456.

2 réponses

Bonjour,

Tes 20 jours comprennent-ils les jours fériés et les samedi dimanche. Si oui, c'est relativement simple il suffit de sélectionner la cellule du 1er jour de congés et de mettre à coté dans la formule + 20. Tu auras en réponse la date de départ augmentée de 20 jours.

sauf à ce que je n'ai pas bien compris ta demande.

Si tu dois décompter les week-ends et les fériés, je pense qu'il faut passer par des formules intermédiaires avant d'arriver à ton résultat final


Concernant la première partie de ton tableau, tu aurais pu tout simplement en bout de ligne, faire une formule NB.SI qui aurait comptabiliser toutes les cellulles remplies dans ta ligne, et qui t'aurait donner le nombre de jours de vacances par employé.

@+++++++++

Eirêne
0
Jessi4456 Messages postés 3 Date d'inscription lundi 20 août 2007 Statut Membre Dernière intervention 12 novembre 2007
20 août 2007 à 23:04
Les 20 jours ne sont pas forcément consécutifs...
En fait, mon idée est de compter le nombre de cellules contenant le caractère "x" avec une fonction NB.SI, et de rappeler la date qui correspond à la colonne de la 20ème cellule contenant un "x". Comme mon tableau est sous la forme d'un calendrier, les occurences sont forcément classés selon un ordre chronologique.

Une lumière pour m'éclairer ?
Merci,
Jessi4456.
0
Raymond PENTIER Messages postés 57157 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 28 mars 2023 17 156
21 août 2007 à 06:51
Jessi4456,

Ta demande étant assez particulière, je vais te proposer une solution tout aussi particulière.

* 1) Le planning étant dans la feuille 1, insérer une colonne en B (nom des salariés en A et date de début du planning en C), où s'inscriront tes résultats.
* 2) Dupliquer la feuille 2 fois (Edition / Déplacer ou copier une feuille .../ Créer une copie).
* 3) Renommer les onglets : clic-droit sur l'onglet Feuil1 / Renommer / Taper "Planning" ; idem pour Feuil1 (2) à renommer "Cumul" ; idem pour Feuil1 (3) à renommer "Date"
* 4) Renseigner la feuille Planning avec des "x" pour les jours de congé
* 5) Dans la feuille Cumul, en C2 saisir =SI(Planning!C2="x";B2+1;B2) ; recopier cette formule pour toutes les dates et tous les salariés.
* 6) Dans la feuille Date, en C2 saisir =SI(EXACT(Cumul!C2;20);C$1;"") ; recopier cette formule pour toutes les dates et tous les salariés.
* 7) En B2 saisir =SOMME(C2:IT2) ; recopier en bas pour tous les salariés. On peut lire en colonne B la date correspondant à 20 jours de congés pour chacun.
* 8) Pour parachever le travail, revenir dans la feuille Planning ; dans B2 saisir =Date!B2 et recopier vers le bas.

Bien entendu il faut faire très attention au format des cellules : Format Date jj/mm pour les lignes 1 et les colonnes B, format Standard ailleurs.

C'est un peu tiré par les cheveux, j'en conviens, mais au moins ça fonctionne ...

Raymond
0