problème condition ( s )- VBA ou formule ?

mikepers

XLDnaute Occasionnel
Bonsoir le forum.
Je butte sur un problème complexe lié à des éléments de calcul de paye.
Mon fichier est presque terminé, et je me rend compte d'un gros souci de dernière minute, concernant le calcul sur des jours ferié.
Je n'arrive pas à mettre en forme mon idée, qui porte sur une conditionnelle relativement complexe pour moi.
VBA ou formule ???
Si quelqu'un peut me lancer dans une direction, ce serai sympa
( fichier-synthèse du problème joint ).

Merci par avance.
 

Pièces jointes

  • Paye_1.zip
    7.6 KB · Affichages: 20

Gorfael

XLDnaute Barbatruc
Re : problème condition ( s )- VBA ou formule ?

mikepers à dit:
Bonsoir le forum.
Je butte sur un problème complexe lié à des éléments de calcul de paye.
Mon fichier est presque terminé, et je me rend compte d'un gros souci de dernière minute, concernant le calcul sur des jours ferié.
Je n'arrive pas à mettre en forme mon idée, qui porte sur une conditionnelle relativement complexe pour moi.
VBA ou formule ???
Si quelqu'un peut me lancer dans une direction, ce serai sympa
( fichier-synthèse du problème joint ).

Merci par avance.
Salut
tu te fais des moeuds avec les boyaux de la tête, non :confused:
si j'ai bien compris ton problème, tu as un tas de conditions pour que G=0 et une unique condition pour que G=1
comme c'est un tableau synthétique, te donner une formule exacte, mais
=si(et(X travaille;F=FERIÉ);1;0) devrait être suffisant

Ce n'est qu'une approche, mais dans un cas comme ça, je mets toutes les conditions, une par une, avec le résultat qu'elles doivent produire. Comme tu n'as que 2 résultats possibles 0 ou 1, c'est facile de regrouper et de voir laquelle des deux comporte le moins de variables.
Après tu ne recherche que comment simplifier les conditions de cette unique réponse pour avoir VRAI, toutes les autres conditions donnant FAUX

En règle générale, c'est là qu'on regrette de ne pas avoir été plus attentif à l'école ;) .

Les problèmes de logiques sont faciles : c'est le transfert du français à l'équation logique qui est ardu.

A+

NOTA : Pour le É de FERIé essais Alt enfoncé, et tu entres 0201 au clavier numérique
 

mikepers

XLDnaute Occasionnel
Re : problème condition ( s )- VBA ou formule ?

merci Gorfael, pour cette mise au point.
Le souci c'est que les conditions se multiplient.
Effectivement si x travaille :
- le jour n'est peut être pas ferié.
Si x netravaille pas, c'est peut être que:
1: il est en repos
2: il est en récup
3: il est en maladie
4: il est en RTT

C'est le nombre de ces conditions qui me pose problème, car mon
niveau en formule ne me permet pas de dépasser le stade des 3 conditions
imposée par excel.
à moins de regrouper les condition 1 et 4 ( ou de les assembler dans une condition vba ) je ne vois pas comment faire.

Ps : effectivement, j'ai eu beaucoup de mal à suivre en classe, et les problèmes de logique ne sont pas mon fort parfois, et c'est pour celà que je sollicite parfois l'aide du forum, et consulte les tutos.

Merci
 

Tibo

XLDnaute Barbatruc
Re : problème condition ( s )- VBA ou formule ?

Salut mike, gorfael,

si j'ai bien compris ton problème : tu dois obtenir 1 ou 0 en colonne G

essaye avec cette formule :

=(F13="Ferié")*(B13<>"repos")*(E13<>"récupération")*(E13<>"maladie")*(E13<>"ancienneté")*(E13<>"RTT")

dis nous si ça correspond à ton attente

A te lire

@+
 

mikepers

XLDnaute Occasionnel
Re : problème condition ( s )- VBA ou formule ?

houra !
____________
grace au résonnement de tibo ( j'ai bien noté aussi l'info de JP), j'ai réussi à composer une formule qui tiens la route.
Je vous la note ici, mais elle ne concerne pas le fichier que j'ai mis sur le forum mais mon fichier source.
En fait j'ai réduit toutes les conditionnelles au simple résonnement : " si la cellule est vide ", ce qui fonctionne aussi bien.
Soit ;
=SI(M6<>"ferié";0;SI((M6="ferié")*(D6=""")*(E6="");1;0))

merci beaucoup, tous vos post m'ont beaucoup aidé.
 

Discussions similaires

Statistiques des forums

Discussions
312 273
Messages
2 086 701
Membres
103 373
dernier inscrit
Edouard007