Completer un planning en fonction des besoins théoriques

Bonjour ,
une nouvelle fois je sollicite votre aide au combien précieuse !!
J’ai créer un tableau qui me donne les besoins en effectifs pour une semaine donnée .
Je souhaite pouvoir a partir de ce premier tableau pouvoir obtenir le total des compétences nécessaires
ligne par ligne et dans un deuxième temps pour aller remplir nominativement en fonction des personnels de chaque ligne présent .
Ci joint le tableau ,dans l’onglet « requête » vous trouverez plus de précisions .
Pour la mise en forme je pense faire des modification une fois le fonctionnement établi .
Bonne soirée et merci d’avance
Franck.
Effectifs.xlsm (379,3 Ko)

Bonjour

Ci-joint ma proposition

Onglet « Besoins » j’ai alimenté ton tableau colonne J à Q en fonction des besoins par jour exprimés en colonne A à H

reste la répartition dans la colonne « qui » en fonction des compétences et là je suis très perplexe !!!

Dans une seule cellule pour intégrer x noms en fonction de la nécessité obtenue cellule de gauche même ligne dur dur dur !!!
De plus pour 4 besoins par exemple en cuisiniers sur la ligne 4 sachant avoir en réserve que 2 représentant chercher l’erreur !!!

Merci de m’éclairer sur la conduite à tenir pour ces 2 points

Testes déjà le premier point sur le total par ligne par jours colonne L/N/P onglet « Besoins » en cliquant sur le bouton « Besoins »

Fais moi un retour

Effectifs.xlsm (387,7 Ko)

Merci FFO ,
je comprend ton interrogation sur l’intégration des noms,j’ai ce matin refait un tableau avec une mise en forme qui répondra a tes question (voir onglet « détail des besoins ») ,mon souhait est de pouvoir remplir par rapport aux compétences par ligne disponible ,les cellules en fonction du nombre de compétence requise et (c’est là l’intérêt premier du tableau)être alerté lorsqu’une compétence n’a pas pu être honoré (d’où ton doute lorsque mon besoin est de 4 cuisiniers sur la ligne 4 et que je n’en dispose que de 2 ,ce tableau pourrait me permettre d’arbitrer sur des choix de production en fonction des ressources disponibles)
J’ai donc trouvé intéressant de créer un nouvel onglet (j’ai du coup opté pour une formule « SOMME.SI » (DÉSOLE DE NE PAS AVOIR PU PRÉVENIR AVANT TU AS COGITE ALORS QUE J’AVAIS CHANGE D’OPTIQUE !!)
Ci joint mon nouveau tableau :
Copie de Calcul besoins Effectifs.xlsm (401,7 Ko)
Merci ,
Franck

Donc si je comprends bien tu as résolu tes besoins avec des formules
Plus besoin de macro
Dommage j’ai travaillé un peu pour rien mais ce n’est pas grave
L’essentiel c’est ta satisfaction

Peut être une autre fois

Au plaisir

Enfin, j’ai résolu une partie du problème mais j’ai encore besoin d’aide pour la partie remplissage des noms et alerte si je n’ai plus de nom à mettre dans les cellules.
Franck.

Peux tu être plus précis quant à ce qui te manque
Lorsque je regarde ton dernier fichier onglet "Detail des besoins " plusieurs éléments me perturbes

D’abord colonne G le nombre des noms est surprenant (1,78-2,04-2,19)
Difficile d’établir la liste avec des chiffres qui ne sont pas rond

beaucoup de tes cellules sont fusionnées une galère pour les traitement VBA

Par exemple au lieu de fusionner les cellules B2 à B5 pour ne mettre qu’une seule fois fois la valeur 1/2 certes c’est plus présentable mais une plaie à gérer dans une procédure il est préférable de répéter 5 fois la valeur

Tout est faisable mais ta présentation ne rend pas la partie facile

Je regarde ce que je peux te proposer avec un tel contexte

Déjà précises moi exactement ton attente avec un exemple du résultat à obtenir

FFO ,
Oui dans la colonne G comme je pense dans les colonnes C et E ,j’obtiens des décimales (ne peut on pas demander a excel d’arrondir les chiffres ? soit au supérieur dans le cas ou nous sommes au dessus de 0.5 de décimale et à l’inférieur quand nous en dessous ? cela faciliterait notre calcul)
Je te renvois le tableau avec un onglet "EXEMPLE"ou je te montre « grosso modo » le résultat que je souhaiterais avoir après traitement des données.
Merci,
Franck .

« ne peut on pas demander a excel d’arrondir les chiffres ? »

Avec la fonction « ARRONDI » comme ceci par exemple :

=ARRONDI(SOMME.SI(Besoins!$D$5:$D$22;'Detail des besoins '!B2;Besoins!$H$5:$H$22);0)

ce qui donne 2,00 au lieu de 1,78

et pour 2,04 donne 2,00

J’attends tes exemples pour te faire une proposition

Super pour les arrondis,je te transmet le tableau avec l"onglet « EXEMPLE »
Franck.
Copie de Calcul besoins Effectifs.xlsm (416,9 Ko)

Merci
Je regarde et te fais une proposition demain
Bonne soirée

Ok merci !!
bonne soirée a toi également .
Franck.

Bonjour

Ma proposition pour la répartition des besoins

Onglet "Detail des besoins " cliques sur le bouton « Répartition »

Petite précision si les capacités permettent pour une catégorie de répondre à tous les besoins par jour avec qu’une partie d’entre elles c’est toujours la même qui est intégrée pour tous les jours

Si par exemple en cuisiniers par jour j’ai un besoin de 2 pour une disponibilité A/B/C/D c’est A et B qui seront utilisé systématiquement et non pas pour l’un A et B pour l’autre C et D
Cette possibilité de faire tourner le panel disponible demande plus de complexité dans le process

A toi de voir si option est à mettre en place

Fais des tests et dis moi

Copie de Calcul besoins Effectifs2.xlsm (432,9 Ko)

Merci FFO ,
c’est tout à fait ce que je souhaitais ,en ce qui concerne la rotation du personnel dans le tableau je pense que ce n’est pas nécessaire ,l’idée est vraiment de pouvoir être alerté lorsqu’il manque une compétence .
Par contre il y a une erreur sur le lundi pour les cuisiniers 7 , le besoin est de 2 ,j’en ai 2 en liste et la répartition me donne une compétence manquante .
Autre requete ,si je veux changer l’affectation des cuisiniers dans la base de donnée j’obtiens egalement un resultat incohérent ,peut-on avant traitement affecter une ligne a chaque cuisinier ?

Franck

Petite coquille dans les traitements corrigée dans le nouveau fichier ci-joint

Testes et dis moi

Copie de Calcul besoins Effectifs2.xlsm (432,9 Ko)

« Autre requete ,si je veux changer l’affectation des cuisiniers dans la base de donnée j’obtiens egalement un resultat incohérent ,peut-on avant traitement affecter une ligne a chaque cuisinier ? »

Mais encore ???

Merci d’éclairer ma lanterne je vois pas trop ce dont tu parles

1 « J'aime »

En fait cela fonctionne déjà ,je voulais simplement pouvoir d’un traitement à l’autre pouvoir changer dans l’onglet des cuisiniers par ligne ,l’affectation des lignes par cuisiniers et me permettre de boucher les manquants .
Merci encore pour le super boulot !!!
Je regarde tout ça et vais surtout essayer de comprendre la démarche .
J’ai une autre question ,un petit couac avec la recherchev dans l’onglet besoin ,pour certaine recette les cellules restent vides alors que la formule est conforme .
Je te met dans le tableau les exemples que je n’arrive pas a solder :Onglet « besoin » les deux dernieres ligne colorées en orange il me manque les recherches en colonnes E,F,G,H.
Copie de Calcul besoins Effectifs2.xlsm (430,7 Ko)
Franck .

« En fait cela fonctionne déjà ,je voulais simplement pouvoir d’un traitement à l’autre pouvoir changer dans l’onglet des cuisiniers par ligne ,l’affectation des lignes par cuisiniers et me permettre de boucher les manquants . »

Onglet « cuisiniers par lignes » rien ne t’empêche de rajouter des lignes avec des noms dans les groupes l’essentiel étant que chaque nom rajouté soit dans le bon groupe « CUISINIERS » ou « AIDES CUISINE » ou « CREPIERS » avec soit des nouveaux soit les mêmes peu importe ils seront utilisés en remplacement des manquants puis de rejouer le traitement « Répartition »
Tu peux à cette fin mettre en fin de chaque groupe des disponibilités vides colonne A et B et que tu complètes sur ces colonnes au grés du besoin
Ou mettre en fin des roues de secours pour chaque groupe qui ne seront de toute façon utilisée que si le besoin le nécessite en tout dernier
Fais des essais dans ce sens
Attention toute ligne non utilisée ne doit pas avoir de donnée en colonne A et B dans cet onglet

Pour ton soucis de formule onglet « Besoins » 2 dernière ligne celle-ci fait appel à la valeur colonne G de l’onglet « bddbesoins » sur la ligne de la référence en colonne A

les 2 références colonne A de ces 2 dernières lignes soit :

CRA086244
CRC059997

n’ont aucune donnée dans la colonne G de leur ligne onglet « bddbesoins »

Donc la formule tombe en erreur car celle-ci réalise une division par 0 faute de donnée trouvée et mets une valeur nul au lieu de #valeur car programmée ainsi avec la fonction SIERREUR

Donc se pencher sur l’absence de donnée onglet « bddbesoins » colonne G pour ces 2 codes listées en colonne A
La mise en place de celle-ci redonnera des couleurs à tes 2 dernières formules

Voilà pour les explications

A ta dispo si besoin

FFO ,
je comprend bien que si la cellule cherchée est vide je n’obtiens rien ,mais en l’occurence (et c’est là que je reste perplexe ) elle ne le sont pas :


et

Donc je devrait avoir un resultat !!
Franck .
Copie de Copie de Calcul besoins Effectifs2.xlsm (431,2 Ko)
Ps:J’ai une autre requête, ne peut-on pas coupler la macro « export » et « répartition »???

Attention ta formule fais appel à l’onglet « bddbesoins » d’un autre classeur : bddbesoin

=SIERREUR(B93/SI(ESTVIDE(A93);"";RECHERCHEV(A93;[bddbesoin]bddbesoins!$A$2:$G$1995;7;FAUX));"")

avec cette partie :

[bddbesoin]bddbesoins!

Voir dans ce classeur

sinon supprimes cette partie : [bddbesoin]

Et fais en sorte qu’en colonne G onglet « bddbesoins » pour tous les codes il y ait une valeur

J’ai fais des essais en supprimant cette partie et en m’assurant de la présence d’une donnée colonne G onglet « bddbesoins » pour le code considéré cela fonctionne parfaitement

Testes de ton côté

Puis regarde ce qu’il en est pour le classeur bddbesoin

Fais moi un retour

En essayant de mettre à jour les liaisons entre classeur j’obtiens ceci :

Il y a bien le classeur « bddbesoin »

« Ps:J’ai une autre requête, ne peut-on pas coupler la macro « export » et « répartition »??? »

c’est à dire ?

A activer avec le même bouton ?

Ou autre et quoi ?

Je n’avais prété attention a ce detail ,c’est rectifié !!
Si l’on peut activer les deux macro avec le meme bouton (jai essayé de rajouter a la fin de la macro :
Sub Répartition()
Run (« export »)
Run (« Répartition_cuisinier »)
Run (« Répartition_aide »)
Run (« Répartition_crépier »)
End Sub
Mais a priori il manque quelque chose …
Merci FFO .

Et oui ce n est pas suffisant mais un très bon début bravo !!!
Il faut que la macro « export » se déroule l onglet de son bouton actif à l écran
Pour se faire mets avant son appel une ligne de code comme ceci :

Sheets (« le nom de l onglet »).Activate
Puis ta ligne de code ajouté puis de réaliser la même chose pour le traitement « Répartition » il faut rendre actif l onglet du bouton donc avant l appel des autres traitement rajouter la même ligne de code mais avec le nom de l onglet qui porte le bouton « Répartition »
Sheets (« le nom de l onglet »).Activate

Je te laisse faire dans cet esprit un petit apprentissage c est toujours mieux
Mais rassures toi je reste à ta disposition en cas d échec

Fais moi un retour