Formule SI imbriquée 2


#1

Bonjour,

Je souhaite mettre en place une formule Excel imbriquée, qui comporte plusieurs critères :
Augmentation de 35euros s’applique à tous les salariés, sauf alternants (Code “C” et “Q” dans colonne “type de contrat”), ayant une ancienneté de 12 mois (colonne avec date d’entrée) et dont le salaire se situe entre 1300 et 2500.

Je n’arrive pas à intégrer les critères d’ancienneté et de type de contrat…

=SI(ET(AJ2>=1300;AJ2<2500);35;0)

Je vous remercie d’avance pour votre aide.

Bien cordialement,


#2

Bonjour Charlotte9,
Avec un fichier exemple c’est toujours mieux,et ancienneté de 12 mois assez vague (+ - =?) mais a l’aveugle je dirai :
1-Ancienneté peut etre calculée avec la fonction =datedif(date_entree;aujourdhui();“m”)
2-Type de contrat un ou fera l’affaire : ou(type de contrat=“C”;type de contrat=“Q”)

Au final à essayer comme suit :slight_smile:
=SI(ET(ET(AJ2>=1300;AJ2<2500);OU(type de contrat=“C”;type de contrat=“Q”);datedif(date_entree;aujourdhui();“m”)=12);35;0)


#3

Bonjour,

Concernant l’ancienneté, il faut que le salarié ait au minimum 12 mois d’ancienneté pour bénéficier de l’augmentation.

La formule proposée ne fonctionne pas. La valeur qui en sort est nulle.
Pour calculer l’ancienneté, il faut que au 31/01/2018, le salarié ait plus de 12 mois d’ancienneté.

Cette formule est correcte? DATEDIF("date_d’entrée;“31/01/2018”;“m”)>=12

Peut être que la formule proposée ne marche pas, car le “OU(type de contrat=“C”;type de contrat=“Q”)” prend en compte les alternants au lieu de les exclure? Il ne faudrait pas plutot marquer “OU(type de contrat<>“C”;type de contrat<>“Q”)” ?


#4

1- Pour DATEDIF l’ordre des dates est le suivant =datedif(date_ancienne;date_récente;“durée”)

2- Ta fonction au départ inclue déjà ceux entre 1300 et 2500; pour les exclure: Inverse le 0 et 35, ce qui fera 0 pour les conditions que tu as énumérées au dessus, et 35 sinon

Merci de mettre un fichier exemple si tu n’y arrives toujours pas.


#5

J’y suis presque, mais il y a un problème avec la condition “OU(D8<>“C”;D8<>“Q”)”. Excel fait abstraction du code “Q”. Comment pourrait-on l’écrire différemment?

Voici un fichier avec un exemple : Exemple.xlsx (10,6 Ko)


#6

Bonjour,
Par rapport au classeur de votre dernier post

=SI(ET(B2>=1300;B2<2500;D2<>"C";D2<>"Q";DATEDIF(C2;"31/12/2018";"m")>=12);35;0)

#7

Tout est bon ! Je vous remercie pour votre aide.

Très bonne fin de journée,


#8

Bonjour à toutes et tous,

J’aurai mis en “E2”

=SI(ET(D2<>"C";D2<>"Q";B2>=1300;B2<2500;DATEDIF(C2;AUJOURDHUI();"m")>=12);35;0)

Tirer vers le bas autant que nécessaire.

Cordialement.