XL 2019 Formule à corriger

abi_71@

XLDnaute Junior
Bonjour à tous,

J'ai un fichier dont dans la colonne NW et les lignes 11 et 12 les données sont définit et fonctionnent j'ai ajouté une nouvelle donnée pour NW13 et je dois aussi ajouter cette nouvelle entrée qui sera SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$13;0,5;2 dans cette formule existante ci-dssous :

=SOMMEPROD((DECALER($A17;0;31*($A$3-1)+1;1;31)<>"")*(SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$11;0,5;SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$12;0,5;1))*(DECALER($A$4;0;31*($A$3-1)+1;1;31))))

normalement devrait être comme ;

=SOMMEPROD((DECALER($A17;0;31*($A$3-1)+1;1;31)<>"")*(SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$11;0,5;SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$12;0,5;1;SI(DECALER($A17;0;31*($A$3-1)+1;1;31)=$NW$13;0,5;2))*(DECALER($A$4;0;31*($A$3-1)+1;1;31))))

mais reçoit le message d'erreur : vous avez entré un nombre trop important d'arguments pour cette fonction est-ce qu'il y a trop de parenthèse si vous pouvez me dire comment corriger car je suis pas doué en matricielle.

Merci d'avance
 

abi_71@

XLDnaute Junior
Bonjour

Comme on a pas ton fichier. je ne vais meme pas essayer de comprendre la formule
tu n'as plus qu'à la décomposer et vérifier que chaque fonction utilisée (décaler, si) a son bon nombre d'arguments
Bonjour vgendron,

Vous pouvez trouver le fichier ci-dessous, donc quand je vais saisir le pm qui est une valeur de 0,5 dans la colonne sur le mois et sur l'année doit accumuler automatiquement par la même occasion je voudrais vous demander dans l'onglet calendrier si possible via la cellule A1 (liste déroulante) on sait choisir via cette liste déroulante le mois mais quand on fait NextMonth ou PreviousMonth la cellule A1 ne change pas càd si je suis au mois du février la cellule A1 devrait être 2.

Bien cordialement,
 

Pièces jointes

  • absence.xlsm
    70.5 KB · Affichages: 6

abi_71@

XLDnaute Junior
un peu de ponctuation stp dans ton texte
on ne comprend rien
Que saisis tu?
ou ca? (quelle cellule quelle feuille)
je vais essayer d'être plus explicite, dans l'onglet calendrier dans n'importe quelle cellule de la semaine (hors week-end) quand on saisi le PM vous verrez que dans la colonne NJ (pour le mois) et la colonne NK (pour l'année) y a le résultat 1 ( 1 = une journée) qui s'affiche mais comme PM est une demi-journée (d'ailleur comme AM et ADJ) justement ici dans ces deux colonnes NJ et NK voudrais 0,5 (0,5 = demi-journée) s'affiche après la modification de la formule ( formule pour chaque ligne à partir de NJ8 (pour le mois) et NK8 (pour l'année).
En espérant être plus explicite.

Bien cordialement,
 

vgendron

XLDnaute Barbatruc
Voir PJ
1) regarde les deux plages nommées "MoisEnCours"==> Qui évolue en fonction du mois affiché (remplace les decaler(a8;31*......)
et AnnéeComplète==> c'est le planning complet du 1er janvier au 31 déc
à améliorer pour prendre en compte automatiquemnt le nombre de salariés

2) regarde les formules dans ta colonne NJ: somme des CT (1) + ADJ (0.5) +AM (0.5)
colonne NK: meme somme sur toute l'année

3) colonnes NL à NT: j'ai supposé que c'était pour avoir le détail sur le mois (d'ou la précision ajoutée dans la ligne 4)

Hello @youky(BJ)
 

Pièces jointes

  • absence.xlsm
    71 KB · Affichages: 4

abi_71@

XLDnaute Junior
Voir PJ
1) regarde les deux plages nommées "MoisEnCours"==> Qui évolue en fonction du mois affiché (remplace les decaler(a8;31*......)
et AnnéeComplète==> c'est le planning complet du 1er janvier au 31 déc
à améliorer pour prendre en compte automatiquemnt le nombre de salariés

2) regarde les formules dans ta colonne NJ: somme des CT (1) + ADJ (0.5) +AM (0.5)
colonne NK: meme somme sur toute l'année

3) colonnes NL à NT: j'ai supposé que c'était pour avoir le détail sur le mois (d'ou la précision ajoutée dans la ligne 4)

Hello @youky(BJ)
2) regarde les formules dans ta colonne NJ: somme des CT (1) + ADJ (0.5) +AM (0.5)
colonne NK: meme somme sur toute l'année ok

Ma demande était pour PM (0,5) ? il est toujours repris comme (1) et non comme (0,5) @Bruno l'a fait en supprimant ADJ
 

abi_71@

XLDnaute Junior
bah.. tu as suffisamment d'éléments pour adapter.. non.?
oui selon votre formule j'aoute
SOMMEPROD((INDEX(MoisEnCours;LIGNES($A$8:A13);)=$NW$13)*0,5)
qui devient


1675428076737.png


mais ça ne fonctionne pas
j'ai ajouté en photo car le ; ) devient un smile
 
Dernière édition:

abi_71@

XLDnaute Junior
dans le dernier sommeprod: pourquoi LIGNES($A$8:A13) ??
moi j'ai mis LIGNES($A$8:A8)
Merci corrigé, pourtant j'ai copier/coller la formule est juste changé $NW$13 mais changé d'elle-même manque d'attention!

est-ce que pour ma deuxième question dans l'onglet calendrier si possible via la cellule A1 (liste déroulante) on sait choisir via cette liste déroulante le mois mais quand on fait NextMonth ou PreviousMonth la cellule A1 ne change pas càd si je suis au mois du février la cellule A1 devrait être 2.
 

vgendron

XLDnaute Barbatruc
besoin d'une explication je pense
MoisEnCours ==> C'est le Mois Sur TOUS les salariés
= plage de 31 colonnes (les bonnes) et 10 lignes (nombre de salariés)

en NJ18, on ne veut compter QUE les elements sur le PREMIERE ligne de MoisEnCours
VB:
pour ca: on utilise "Index(MoisEnCours;1;)
Code:
pour NJ19, c'est la deuxième ligne qui nous interresse.. donc Index(MoisEnCours;2;)

plutot que changer 1 2 3... sur chaque ligne on utilise la fonction "Lignes(Deb;Fin)" qui compte le nombre de lignes entre la cellule de début (fixée avec des $) et la cellule de fin (qui s'adapte quand tu tires la formule vers le bas)

et voila
 

Discussions similaires

Réponses
9
Affichages
448
Réponses
4
Affichages
329
Réponses
8
Affichages
458

Statistiques des forums

Discussions
312 211
Messages
2 086 299
Membres
103 173
dernier inscrit
Cerba95