Deux tableaux liés qui s'incrémente

Fermé
Alpagenod Messages postés 9 Date d'inscription jeudi 20 juillet 2017 Statut Membre Dernière intervention 12 septembre 2017 - 20 juil. 2017 à 11:14
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 - 25 juil. 2017 à 15:46
Bonjour,

Tout d'abord je m'excuse si je ne suis pas très clair mais je débute sur Excel et je sens que j'ai le neurone qui surchauffe.
J'ai un tableau type :
Nom - Echelon - Ancienneté dans l'échelon
Robert - 2 - 18/04/2014
Franck - 5 - 07/09/2015

Et un autre type :
Echelon - Durée
1 - 2 ans
2 - 2 ans
3 - 3 ans
4 - 3 ans
5 - 4 ans
6 - 4 ans

Est-il possible de réaliser un troisième tableau avec l'évolution des carrière sous la forme :
Nom - Echelon - Ancienneté dans l'échelon - Echelon suivant - Date d'effet
Robert - 2 - 18/04/2014 - 3 - 18/04/2016
Franck - 4 - 07/09/2015 - 5 - 07/09/2018

Merci de vos aides et orientations pour que je puisse mettre cela en place.

Alpagenod



A voir également:

4 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
20 juil. 2017 à 11:44
Bonjour
ce qui serait le plus simple,à mon avis, diercetemnt dans votre tableau:

quoique pour le 6 on peut se demander ce qui se passe au delà de 14 ans
feuil2 en A à partie de A2, la l iste des noms
en B la date d''embauche
en C1, E1 etc.., en titre de colonne les périodes d'ancienneté,(mais cumulées) une colonne sur deux donc
en C1:2
en E1:4
en G1:7
en I1:10
en K1:14
en M1: 18

dans les colonnes intercalées titrées "date d'accès" à partir de D2, cette formule à copier sur les colonnes derrière les codes et à tirer sur les hauteurs de la liste
=MOIS.DECALER($B2;12*D$1))

attention aux $ aux bons endroits

et dans les colonnes périodes
en C2 =SI(ET(D2>0;(AUJOURDHUI())>D2;1;"")
en E2 =SI(ET(F2>0;AUJOURDHUI()>F2);2;"")

et ainsi de suite en changeant le;1;"") en ;2;"") en ;3;"") selon la colonne et l'ancienneté correspondante

en complément:
vous pouvez n'afficher dans les colonnes dates que les dates dépassées en modifiant la formule:

=SI(MOIS.DECALER($B2;12*D$1)<AUJOURDHUI();"";MOIS.DECALER($B2;12*D$1))

Dans ce cas la formule en C,F etc.. deviendrait simplement:

=SI(D1>0;1;"") etc...


revenez si problème

crdlmnt


0
Alpagenod Messages postés 9 Date d'inscription jeudi 20 juillet 2017 Statut Membre Dernière intervention 12 septembre 2017
20 juil. 2017 à 13:34
Merci de cette première solution mais inutilisable dans mon cas.
Mon souci c'est que tout le monde ne démarre pas au même échelon, je ne peux donc pas utiliser la date d'embauche...
C'est pour cela que je me demandé si je pouvais incrémenter un tableau à l'aide d'un autre en me disant, je dis que l'échelon 2 c'est X année, le 3 c'est Y année, etc, et du coup lorsqu'il repère que la personne est dans tel échelon il sait que la durée est X ou Y et peut donc me donner la date suivante.
L'affichage des dates dépassés sera par contre parfait.
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
20 juil. 2017 à 14:10
Alors dans ce cas, si vous avez un tableau des valeurs de chaque échelon, par exemple en Y1 Z6 avec en Y les échelons et en Z les périodes:

pour une date de début en C2, un code en D2, la date suivante en E2:

=MOIS.DECALER(C2;RECHERCHEV(D2;$Y$1:$Z$6;2;0)*12)

pour avoir la date de fin de l'échelon en E2

pour avoir l'échelon suivant en F2,
=D2+1 devrait suffire!

sauf si vos codes d'échelon ne sont pas incrémentés de 1 à chaque fois, et donc:
=INDEX($Y$1:$Y$6;EQUIV(D2;$Y$1:$Y$6;0)+1)

sous réserve de bonne compréhension

si ça ne va pas, déposez un modèle en bidouillant les infos à protéger ici:
https://www.cjoint.com/
et revenez coller ici le lien donné par le site

crdlmnt
0
Alpagenod Messages postés 9 Date d'inscription jeudi 20 juillet 2017 Statut Membre Dernière intervention 12 septembre 2017
25 juil. 2017 à 14:38
Merci beaucoup cela fonctionne parfaitement.
Pour ma culture personnelle pourriez vous m'expliquer la formule =MOIS.DECALER(C2;RECHERCHEV(D2;$Y$1:$Z$6;2;0)*12)

Merci encore
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 414
Modifié le 25 juil. 2017 à 15:47
Bonjour

MOIS.DECALER(date début; écart)
ce code donne la date du jour décalée exactement de la valeur demandée par rapport à la date initiale
soit avant avec une valeur négative, après avec une valeur positive

exemple si 25/7/2017 en A1
la formule en B1:
=MOIS.DECALER(A1;2) donnera le 25/9/2017
=MOIS.DECALER(A1;-3) donnera le 25/4/2017

Dans notre cas, on part de la date en C2 et du code en D2
la formule RECHERCHEV(valeur;plage;N) de colonne;0)

va chercher la valeur dans la 1° colonne de la plage et ressort celle sur la même ligne au N° de colonne de la plage demandé
le code à la fin ;0) ou encore;FAUX) est un code Excel qui précise de ne trouver que la valeur exacte et non pas une valeur proche
dans notre cas:
RECHERCHEV(D2;$Y$1:$Z$6;2;0)*12)
va chercher la valeur de D2 dans la colonne Y1:Y16
ressort la valeur de Z correspondante
et multiplie le résultat par 12, car c'est un nombre d'années qu'il faut transformer en nombre de mois pour le code MOIS.DECALER

espèrant avoir été clair

crdlmnt





La qualité de la réponse dépend surtout de la clarté de la question, merci!
0