Validation des données qui dépends du contenu d'une cellule?

zikkmu

XLDnaute Nouveau
Bonjour à tous


Je suis en train d'élaborer un planning ou chaque personnel est apte à un certains services (taches) et pas à d'autres.

Pour éviter les mauvaises entrées manuelles, je voudrais que dans ma liste déroulante n'apparaissent que les services que la personne concernée est capable d'accomplir.


J'ai déjà un tableau où sont recensées les services que chaque personne est capable d'accomplir.

Et sur une autre feuille j'ai mon planning.
Sur chaque ligne du planning, le nom d'une personne. Et en colonne des dates.

Bien sur, je pourrais saisir manuellement la validation des données pour chaque ligne, mais

1) c'est fastidieux
2) c'est source d'erreurs car mes lignes sont classées par ordre alphabétique et donc si une personne se rajoute, tout est faussé


Donc, il faudrait que ma validation des données sur la ligne "ANAIS" n'autorise que les valeurs qui sont sur la meme ligne que "ANAIS" sur l'autre feuille.


Bien évidemment, c'est incompréhensible sans exemple =)

Merci à tous
 

Pièces jointes

  • PLANNING.xlsx
    15.4 KB · Affichages: 61
  • PLANNING.xlsx
    15.4 KB · Affichages: 76
  • PLANNING.xlsx
    15.4 KB · Affichages: 78

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Validation des données qui dépends du contenu d'une cellule?

Bonsoir zikkmu,

Un essai dans le fichier joint.

Un nom dynamique a été créé de nom "ListeServices" et de définition:
Code:
=DECALER(Tableau1[[#En-têtes];[Serviteurs]];EQUIV(Tableau2[@Serviteurs];Tableau1[Serviteurs];0);1;1;6)

Pour la validation des cellules du tableau planning, on a choisi "liste" et comme source =ListeServices
 

Pièces jointes

  • zikkmu-PLANNING v1.xlsx
    15.3 KB · Affichages: 32

zikkmu

XLDnaute Nouveau
Re : Validation des données qui dépends du contenu d'une cellule?

Merci mapomme, c'est exactement ce que je voulais faire. Mais je ne comprends pas trop la fonction DECALER, il va falloir que je buche un peu dessus pour comprendre tout ça...

Autre question:

Tu as du voir que la première colonne du tableau planning n'est qu'une recopie de la première colonne du tableau de la feuille "données" cellule par cellule. Cela me pose un problème : lorsque je rajoute une personne via le tableau données et que je trie par ordre alphabétique, les références ne sont plus bonnes.

Comment je pourrais copier la première colonne de mon tableau2 vers la première colonne de mon tableau 1?
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Validation des données qui dépends du contenu d'une cellule?

(re)bonsoir zikkmu,

J'avais oublié dans mon précédent message de faire remarquer que les noms doivent être sans doublon, faute de quoi la validation ne fonctionne pas. Exemple: il y a deux Jean-luc, la liste de validation pour le deuxième Jean-luc est erronée. On peut choisir comme nom Jean-luc 1 et Jean-luc 2 pour les différencier.

Pour la nouvelle question, je vois... (pas grand chose pour l'instant :( )
 

zikkmu

XLDnaute Nouveau
Re : Validation des données qui dépends du contenu d'une cellule?

OK pour ta remarque, dans le fichier original, il n'y a pas deux noms identiques, pour l'exemple j'ai enlevé les noms de famille.

Sinon j'essaie aussi de trier mes données de la façon suivante : "Afficher toutes les personnes aptes au service : "Pianiste" de manière à faciliter le travail de celui qui fera ce planning.

En fait, il faudrait savoir s'il y a moyen de "lier" deux tableaux...
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Validation des données qui dépends du contenu d'une cellule?

Re,

(...) Autre question:
Tu as du voir que la première colonne du tableau planning n'est qu'une recopie de la première colonne du tableau de la feuille "données" cellule par cellule. Cela me pose un problème : lorsque je rajoute une personne via le tableau données et que je trie par ordre alphabétique, les références ne sont plus bonnes.

Comment je pourrais copier la première colonne de mon tableau2 vers la première colonne de mon tableau 1?

Bon, je n'ai pas trop l'habitude des tableaux dans une feuille Excel. Si je devais le faire, comment ferais-je? :confused:

dans le tableau de la feuille donnée:
  • je me placerais sur la dernière cellule, appuierais sur Tab et ainsi une nouvelle ligne serait créée
  • dans la première colonne je mettrais le nom et dans les colonnes suivantes les services rattachés à ce nouveau nom.
  • et ainsi de suite...

à la fin de la saisie sur ce tableau, je me placerais sur la tableau de la feuille "Planning":
  • Avec la touche Tab, je rajouterais des lignes jusqu'à la fin de la retranscription des nouveaux noms.


Ce n'est qu'après cela, que je trierais les deux tableaux suivant la colonne "Serviteurs" en utilisant le filtre automatique sur l’ensemble des colonnes de chaque tableau.
 
Dernière édition:

zikkmu

XLDnaute Nouveau
Re : Validation des données qui dépends du contenu d'une cellule?

Effectivemment, c'est une solution.

Sinon j'ai une autre idée, plutot que de vouloir fusionner deux tableaux, je n'en fais qu'un : mes 6 premières colonnes seront les capacités de chacun, et les colonnes suivantes seront les dates. Mais pour cela il faut réecrire la formule avec DECALER. Je joins le fichier de mon idée, si tu peux adapter la formule stp.
 

Pièces jointes

  • zikkmu-PLANNING v2.xlsx
    16.8 KB · Affichages: 38

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Validation des données qui dépends du contenu d'une cellule?

Re,

(...) Sinon j'ai une autre idée, plutot que de vouloir fusionner deux tableaux, je n'en fais qu'un : mes 6 premières colonnes seront les capacités de chacun, et les colonnes suivantes seront les dates. Mais pour cela il faut réecrire la formule avec DECALER. Je joins le fichier de mon idée, si tu peux adapter la formule stp.

Très bonne idée pour simplifier la mise à jour et la formule du nom dynamique :cool:

Le nom "ListeServices" devient:
Code:
=DECALER(Tableau2[@];0;0;1;6)
 

Pièces jointes

  • zikkmu-PLANNING v2a.xlsx
    16.8 KB · Affichages: 26

zikkmu

XLDnaute Nouveau
Re : Validation des données qui dépends du contenu d'une cellule?

Super=)

Du coup il ne me reste plus qu'à pouvoir trier les personnes par leur capacité. Mais je crois qu'il va falloir que je m'attaque à ça par VB car je ne crois pas qu'excel puisse faire cela uniquement avec des fonctions puisque je veux filtrer les personnes qui possèdent dans une des colonnes 1 à 6 le service "conducteur".
 

Dugenou

XLDnaute Barbatruc
Re : Validation des données qui dépends du contenu d'une cellule?

Bonjour,
plutot que filtrer pour un rôle pour défiltrer pour un autre etc, et si l'objectif est de repérer tous les serviteurs qui ont une certaine capacité : on pourrait ajouter au dessus du tableau une cellule où on choisit le service et faire une MFC sur les serviteurs qui ont cette capacité
 

Pièces jointes

  • zikkmu-PLANNING v2b.xlsx
    18.6 KB · Affichages: 31
Dernière édition:

zikkmu

XLDnaute Nouveau
Re : Validation des données qui dépends du contenu d'une cellule?

Bonjour,
plutot que filtrer pour un rôle pour défiltrer pour un autre etc, et si l'objectif est de repérer tous les serviteurs qui ont une certaine capacité : on pourrait ajouter au dessus du tableau une cellule où on choisit le service et faire une MFC sur les serviteurs qui ont cette capacité

C'est génial ton truc.

J'avais déjà réussi mon affaire de filtre avec une macro mais là il va falloir que je choississe entre deux solutions, quel luxe!

Merci à toi Dugenou.

Comme j'ai reçu beaucoup de coups de main depuis hier, je mets ici mon code qui filtre les personnes ayant au moins telle capacité, ça peut peut être servir à quelqu'un =)
Code:
Sub Filtrer()
'
' Filtrer Macro
Call demasquer
Dim service As String
Dim n As Integer
n = 0
Dim services As Range
service = Range("A1")
Dim cel As Range
Dim row As Range
Set services = Range("Tableau1[[Service1]:[Service6]]")
For Each row In services.Rows
For Each cel In row.Cells
If cel = service Then n = n + 1
Next cel
If n = 0 Then row.EntireRow.Hidden = True
n = 0
Next row
End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 347
Messages
2 087 502
Membres
103 563
dernier inscrit
samyezzehar