[Résolu] Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Modérateur : Vilains modOOs
Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
[Résolu] Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour à tous,
Tout d'abord, je vous pris de m'excuser pour le sujet, je n'ai pas trouvé mieux...
Vous trouverez en PJ un tableau que je suis en train de faire et pour lequel j'aurais besoin d'un coups de main sur une formule.
Je vais prendre pour exemple la feuille "Janvier_AFIS" et la cellule "I18" (si une formule est faisable, je recopierai dans les autres feuilles). Dans cette cellule je souhaiterai pouvoir compter le nombre de vacation d'un agent. A savoir qu'il ne peut y avoir qu'une vacation par jour, même si l'agent à fait plusieurs intervention dans la même journée.
Pour exemple, sur la feuille "Janvier_AFIS" l'agent TEST1 n'a le droit qu'a 1 vacation pour le 01/01/2025 (malgré 2 interventions) et l'agent TEST2 également.
J'ai fais plusieurs tentative mais aucune ne fonctionne. J'ai même essayé de modifier le format de la colonne A pour mettre des dates, mais pareil ça ne fonctionne pas.
Le fichier en PJ est protégé, mais il n'y a pas de mot de passe si vous avez besoin de faire des tests.
J'espère avoir été assez clair.
Merci d'avance pour l'aide que vous pourrez m'apporter.
Bonne journée,
A bientôt.
Tout d'abord, je vous pris de m'excuser pour le sujet, je n'ai pas trouvé mieux...
Vous trouverez en PJ un tableau que je suis en train de faire et pour lequel j'aurais besoin d'un coups de main sur une formule.
Je vais prendre pour exemple la feuille "Janvier_AFIS" et la cellule "I18" (si une formule est faisable, je recopierai dans les autres feuilles). Dans cette cellule je souhaiterai pouvoir compter le nombre de vacation d'un agent. A savoir qu'il ne peut y avoir qu'une vacation par jour, même si l'agent à fait plusieurs intervention dans la même journée.
Pour exemple, sur la feuille "Janvier_AFIS" l'agent TEST1 n'a le droit qu'a 1 vacation pour le 01/01/2025 (malgré 2 interventions) et l'agent TEST2 également.
J'ai fais plusieurs tentative mais aucune ne fonctionne. J'ai même essayé de modifier le format de la colonne A pour mettre des dates, mais pareil ça ne fonctionne pas.
Le fichier en PJ est protégé, mais il n'y a pas de mot de passe si vous avez besoin de faire des tests.
J'espère avoir été assez clair.
Merci d'avance pour l'aide que vous pourrez m'apporter.
Bonne journée,
A bientôt.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Seb1258 le 12 nov. 2024 22:18, modifié 3 fois.
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
Jeff
- GourOOu

- Messages : 9976
- Inscription : 18 sept. 2006 09:40
- Localisation : France
Re: Formule pour compter des vacations (max 1 par jours même si plusieurs interventions en 1 journée)
Bonjour,
Pas de version AOO sous la main pour tester avec ton fichier joint, mais en général, un comptage de jour unique peut se faire avec une fonction FREQUENCE.
(Une recherche rapide : search.php?st=0&sk=t&sd=d&sr=topics&key ... id%5B%5D=4)
A +
Pas de version AOO sous la main pour tester avec ton fichier joint, mais en général, un comptage de jour unique peut se faire avec une fonction FREQUENCE.
(Une recherche rapide : search.php?st=0&sk=t&sd=d&sr=topics&key ... id%5B%5D=4)
A +
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: Formule pour compter des vacations (max 1 par jours même si plusieurs interventions en 1 journée)
Bonjour Jeff et merci pour ton retour,
J'ai pas mal regardé la fonction FREQUENCE comme tu le proposes, mais malheureusement je n'arrive pas à trouver la bonne formule. Les différents résultats de la recherche ne me permettent pas d'avoir le résultats souhaité.
Pour l'instant la formule que j'ai ressemble à ça : FREQUENCE($A$4:$B$12; ) mais je ne sais pas quoi mettre dans matrice pour que le résultat soit bon...
Merci encore
J'ai pas mal regardé la fonction FREQUENCE comme tu le proposes, mais malheureusement je n'arrive pas à trouver la bonne formule. Les différents résultats de la recherche ne me permettent pas d'avoir le résultats souhaité.
Pour l'instant la formule que j'ai ressemble à ça : FREQUENCE($A$4:$B$12; ) mais je ne sais pas quoi mettre dans matrice pour que le résultat soit bon...
Merci encore
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour
une proposition
avec, sur feuille Janvier, un tableau récapitulatif colonne AP à AZ
et reprise des calculs Plage I5:I13
A noter que la colonne A des jours est au format texte ce qui impose la fonction CNUM dans la formule
exemple en Q3
une proposition
avec, sur feuille Janvier, un tableau récapitulatif colonne AP à AZ
et reprise des calculs Plage I5:I13
A noter que la colonne A des jours est au format texte ce qui impose la fonction CNUM dans la formule
exemple en Q3
Code : Tout sélectionner
=SOMMEPROD((CNUM($A$4:$A$300)=$AP3)*($B$4:$B$300=AQ$2)*($E$4:$E$300))Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.14 sous Windows 11
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour et merci pour ta réponse,
Je viens d'ouvrir le document joint et j'ai plein de message d'erreur (#Valeur !).
J'ai regardé un peu mais je t'avoue que je ne comprend pas du tous la formule, est-ce normal ?
Voir en PJ les impressions d'écran.
Merci d'avance,
Je viens d'ouvrir le document joint et j'ai plein de message d'erreur (#Valeur !).
J'ai regardé un peu mais je t'avoue que je ne comprend pas du tous la formule, est-ce normal ?
Voir en PJ les impressions d'écran.
Merci d'avance,
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
re
remettre le classeur avec les erreurs sur un post
remettre le classeur avec les erreurs sur un post
OpenOffice 4.1.14 sous Windows 11
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Voici :
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Re
pour moi c'est OK Feuille janvier
Formules en AQ
pour avoir la liste des agents (avec la cellule AQ1 )
en AQ3
Formule type matricielle
$A$4:$A$300)=$AP3 compte 1 si la colonne A est égale au jour en AP3 (Si différent compte 0)
($B$4:$B$300=AQ$2) compte 1 si la colonne B est égale à l'agent en ZQ2 (Si différent compte 0)
($E$4:$E$300) mémorise l'heure donnée en colonne E
ce qui fait à partir r ligne 4
1 x 1 x 1:00= 1:00
+
1 x 1 x 1:00 = 1:00
+
1 x 0 x 1:00 = 0
+
...
et après plus de correspondance => somme des produits= 2
pour moi c'est OK Feuille janvier
Formules en AQ
pour avoir la liste des agents (avec la cellule AQ1 )
Code : Tout sélectionner
=INDIRECT("$Liste_agents.C"&AQ1)Code : Tout sélectionner
=SOMMEPROD((CNUM($A$4:$A$300)=$AP3)*($B$4:$B$300=AQ$2)*($E$4:$E$300))$A$4:$A$300)=$AP3 compte 1 si la colonne A est égale au jour en AP3 (Si différent compte 0)
($B$4:$B$300=AQ$2) compte 1 si la colonne B est égale à l'agent en ZQ2 (Si différent compte 0)
($E$4:$E$300) mémorise l'heure donnée en colonne E
ce qui fait à partir r ligne 4
1 x 1 x 1:00= 1:00
+
1 x 1 x 1:00 = 1:00
+
1 x 0 x 1:00 = 0
+
...
et après plus de correspondance => somme des produits= 2
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par yclik le 08 nov. 2024 18:53, modifié 1 fois.
OpenOffice 4.1.14 sous Windows 11
-
tintin
- Grand Maître de l'OOffice

- Messages : 10057
- Inscription : 18 juil. 2008 15:29
- Localisation : F-Oise
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour,
Chez moi : D'abord avec Apache OpenOffice 4.1.15
. .
Ensuite avec LibO 24.2.7
.
Chez moi : D'abord avec Apache OpenOffice 4.1.15
. .
Ensuite avec LibO 24.2.7
.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO 4.1.15 et LibO 25.2.6 / macOS Intel 13.7.8 Ventura
Adoptium-temurinJDK-jre_1.8.0_462 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
Adoptium-temurinJDK-jre_1.8.0_462 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour Tintin
Que donne le tableau vers colonnes AQ sur LO
l'aide indique pour erreur valeur
La formule produit une valeur ne correspondant pas à la définition, ou une cellule référencée dans la formule contient du texte et non un nombre.
Peut être que la fonction CNUM ne passe pas dans la formule sommeprod
tester en mettant au format nombre la colonne A
en retirant CNUM et en mettant au format nombre les jours colonne A j'ai erreur Valeur
Donc je saisi les jours un a un et là cela fonctionne
donc une une nouvelle version ci dessous
Que donne le tableau vers colonnes AQ sur LO
l'aide indique pour erreur valeur
La formule produit une valeur ne correspondant pas à la définition, ou une cellule référencée dans la formule contient du texte et non un nombre.
Peut être que la fonction CNUM ne passe pas dans la formule sommeprod
tester en mettant au format nombre la colonne A
en retirant CNUM et en mettant au format nombre les jours colonne A j'ai erreur Valeur
Donc je saisi les jours un a un et là cela fonctionne
donc une une nouvelle version ci dessous
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.14 sous Windows 11
-
tintin
- Grand Maître de l'OOffice

- Messages : 10057
- Inscription : 18 juil. 2008 15:29
- Localisation : F-Oise
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour yclik
.
Avec LO, ssur Gestion_SSLIA_AFIS 2 num et sur Gestion_SSLIA_AFIS 4 num c'et la même chose.
.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
AOO 4.1.15 et LibO 25.2.6 / macOS Intel 13.7.8 Ventura
Adoptium-temurinJDK-jre_1.8.0_462 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
Adoptium-temurinJDK-jre_1.8.0_462 / Firefox/Safari/Thunderbird /Time Machine+cloneCCC
Tutoriels du forum pour macOS
Pour sauvegarder vos documents c'est ceinture ET bretelles
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour Tintin, et re yclik,
Je vous avoue que je ne comprends pas tous ce que vous dites lol. Mais la dernière version ne fonctionne pas non plus, j'ai toujours les informations #valeur.
C'est dû à une incompatibilité avec LO ?
Merci d'avance,
Je vous avoue que je ne comprends pas tous ce que vous dites lol. Mais la dernière version ne fonctionne pas non plus, j'ai toujours les informations #valeur.
C'est dû à une incompatibilité avec LO ?
Merci d'avance,
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour
Sur l'aide en ligne LO
https://wiki.documentfoundation.org/FR/ ... ditionnels
il y a indiqué
=SOMMEPROD(A1:A6="Rouge"; B1:B6="grand"; C1:C6) va multiplier les éléments correspondants des matrices mentionnées et renvoyer leur somme, à savoir :
(A1="Rouge")*(B1="grand")*C1 + (A2="Rouge")*(B2="grand")*C2 + ...
et
Une alternative à SOMMEPROD est d'utiliser la fonction SOMME. L'exemple précédent serait rédigé :
=SOMME( (A1:A6="Rouge")*(B1:B6="grand")*C1:C6) )
et saisit comme une formule matricielle en pressant Ctrl+Maj+Entrée. Comme avec SOMMEPROD, ceci agit en multipliant entre eux les éléments correspondants des matrices et en renvoyant leur somme.
Donc tester cette formule en AQ dans le classeur ci dessous
A tester
Nota J'utilise la fonction ((Plage1="x")*(Plage2)) car a priori elle serait compatible avec excel qui ne reconnait pas la fonction dont les plages sont séparées par des ;
Sur l'aide en ligne LO
https://wiki.documentfoundation.org/FR/ ... ditionnels
il y a indiqué
=SOMMEPROD(A1:A6="Rouge"; B1:B6="grand"; C1:C6) va multiplier les éléments correspondants des matrices mentionnées et renvoyer leur somme, à savoir :
(A1="Rouge")*(B1="grand")*C1 + (A2="Rouge")*(B2="grand")*C2 + ...
et
Une alternative à SOMMEPROD est d'utiliser la fonction SOMME. L'exemple précédent serait rédigé :
=SOMME( (A1:A6="Rouge")*(B1:B6="grand")*C1:C6) )
et saisit comme une formule matricielle en pressant Ctrl+Maj+Entrée. Comme avec SOMMEPROD, ceci agit en multipliant entre eux les éléments correspondants des matrices et en renvoyant leur somme.
Donc tester cette formule en AQ dans le classeur ci dessous
Code : Tout sélectionner
=SOMMEPROD($A$4:$A$300=$AP3;$B$4:$B$300=AQ$2;$E$4:$E$300)Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.14 sous Windows 11
-
Michel JANZEF
- ManitOOu

- Messages : 3542
- Inscription : 12 janv. 2006 10:04
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour yclick,
Cette version fonctionne sous LibO.
Bonne journée.
Cette version fonctionne sous LibO.
Bonne journée.
AOo 4.1.15 (Oracle JRE x86 - 1.8.0_461) et LibO 25.2.6.2 (Oracle JRE x64 - 1.8.0_461) - Windows 11 Famille 24H2 (26100.6725) 64 bits
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour,
Je viens de tester à la maison et ça à l'air de fonctionner.
Merci beaucoup pour le temps passé sur ma question.
Je testerai au boulot après mes congés pour voir si ça fonctionne aussi, mais ça devrait le faire.
Merci encore

EDIT :
Après quelques tests sur mon pc perso, j'ai rencontré un ou deux problèmes.
- L'agent TEST 10 dispose du même nombre de jours de vacations et d'heures que l'agent TEST 1. Pour ce soucis je suppose que c'est normale et LO ne prends pas en compte le 0. Le problème pourrait être réglé en mettant les bons noms des agents.
- J'ai souhaité changer le nom de l'agent TEST 10 par un autre (bidule truc, oui je suis imaginatif) et toutes les lignes le concernant me renvoi une erreur sur toutes les feuilles (#N/D). En revanche, si je change le nom de TEST 1 par bidule truc, ça fonctionne... Je ne comprends pas trop pourquoi. J'ai également modifié tous les noms dans la feuille Liste_agents et là les calculs ne fonctionnent plus du tous.
- Je ne comprends pas pourquoi les formules en cellules I5:I14 renvoie sur les cellules H18:H27, ça ne devrait pas plutôt être sur la H5:H14 ?
Si toutefois tu as encore un peu de temps pour moi je t'en serais reconnaissant
Je viens de tester à la maison et ça à l'air de fonctionner.
Merci beaucoup pour le temps passé sur ma question.
Je testerai au boulot après mes congés pour voir si ça fonctionne aussi, mais ça devrait le faire.
Merci encore
EDIT :
Après quelques tests sur mon pc perso, j'ai rencontré un ou deux problèmes.
- L'agent TEST 10 dispose du même nombre de jours de vacations et d'heures que l'agent TEST 1. Pour ce soucis je suppose que c'est normale et LO ne prends pas en compte le 0. Le problème pourrait être réglé en mettant les bons noms des agents.
- J'ai souhaité changer le nom de l'agent TEST 10 par un autre (bidule truc, oui je suis imaginatif) et toutes les lignes le concernant me renvoi une erreur sur toutes les feuilles (#N/D). En revanche, si je change le nom de TEST 1 par bidule truc, ça fonctionne... Je ne comprends pas trop pourquoi. J'ai également modifié tous les noms dans la feuille Liste_agents et là les calculs ne fonctionnent plus du tous.
- Je ne comprends pas pourquoi les formules en cellules I5:I14 renvoie sur les cellules H18:H27, ça ne devrait pas plutôt être sur la H5:H14 ?
Si toutefois tu as encore un peu de temps pour moi je t'en serais reconnaissant
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro
-
Oukcha
- RespOOnsable modération

- Messages : 4298
- Inscription : 06 oct. 2008 08:03
Re: [Résolu] Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Si votre sujet n'est pas résolu, merci d'enlever le balisage éponyme.
Cordialement
Cordialement
-
yclik
- HédOOniste

- Messages : 1850
- Inscription : 15 déc. 2010 08:33
Re: [Résolu] Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour
je ne reproduis pas l'erreur en changeant le ligne 10 de la liste agent
Nota
il faudrait peut être que sur la liste agent il y ait plus de ligne que d'agent (donc vide) car en cas de remplacement d'un agent en cours d'année cela ferait disparaître les calculs sur l'agent remplacé.
je ne reproduis pas l'erreur en changeant le ligne 10 de la liste agent
Nota
il faudrait peut être que sur la liste agent il y ait plus de ligne que d'agent (donc vide) car en cas de remplacement d'un agent en cours d'année cela ferait disparaître les calculs sur l'agent remplacé.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
OpenOffice 4.1.14 sous Windows 11
-
Seb1258
- Membre hOOnoraire

- Messages : 106
- Inscription : 11 sept. 2024 15:31
- Localisation : Pas loin du Canada
Re: [Résolu] Compter des vacations : max 1 par jour même si plusieurs interventions en 1 journée
Bonjour,
Je viens de modifier le balisage.
En fait il y as déjà plus de lignes que d'agents, actuellement dans l'unité, il y as 4 agents, j'ai donc 6 lignes en plus au cas où il y ai des modifications (recrutement, remplacement, etc...)
Je test sur le tableau et je reviens.
Merci encore.
EDIT :
Après pas mal de test sur le tableau je pense avoir trouvé (en partie) le problème.
J'ai commencé à alléger le tableau afin de pouvoir le poster sur le forum sans avoir à le zipper (j'ai supprimer quasiment toutes les feuilles).
Ensuite j'ai voulu faire une feuille janvier avec les modifications de yclik et une feuille janvier 2 avec seulement une partie des modifications pour pouvoir faire une explication du résultat souhaité et être plus précis.
Après avoir supprimé les formules INDEX dans les cellules I5:I14 et I18:I27 et mis des formules plus simple (=le résultats de la cellule concernée dans les formules d'yclik) le tableau à l'air de très bien marcher...
Je vais continuer à faire des tests mais je pense que mon problème est résolu. Apparemment le problème venait donc des formules INDEX.
Encore un grand merci à yclik pour son aide ainsi qu'à tintin et Jeff pour leurs contributions.
Je clôture le ticket dans quelques jours après avoir fait des tests avec des données réels.
Merci encore à tous.
EDIT 2 :
Après quelques tests aujourd'hui, je n'ai pas décelé de bug. Merci encore à tous ceux qui m'auront aidé.
Je clôture le ticket.
Cordialement,
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre office 7.3.7.2 < Obligation de version 
Windows 10 Pro
Windows 10 Pro