Bloquer des listes déroulantes
Fermé
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
-
18 juin 2014 à 09:53
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 - 19 juin 2014 à 20:00
Mike-31 Messages postés 18346 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 13 novembre 2024 - 19 juin 2014 à 20:00
A voir également:
- Bloquer des listes déroulantes
- Bloquer pub youtube - Accueil - Streaming
- Créer des listes déroulantes excel - Guide
- Listes déroulantes en cascade excel - Guide
- Bloquer des cellules excel - Guide
- Supprimez la publicité sur YouTube avec cette solution simple et gratuite - Accueil - Streaming
15 réponses
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
Modifié par Mike-31 le 18/06/2014 à 10:50
Modifié par Mike-31 le 18/06/2014 à 10:50
Bonjour,
si j'ai bien compris, il s'agit d'utiliser les horaires définis qu'une seule fois.
Regarde ce montage, Feuil2 qui peut être masquée, colonne A au format texte j'ai saisi les tranches horaires, pour l'exemple de 15 minutes en 15 minutes
colonne B est une copie de la colonne B Feuil1 avec liaison de sorte que les horaires retenus Feuil1 soient recopiés, j'ai nommé cette plage Attribué
colonne C reconsidère la liste sans les horaires préalablement retenus et colonne D reconsidère la liste sans les cellules vides
Feuil1 en A la liste des profs et en B les horaires
il est possible de mettre ces combinaison de formule sur la Feuil1 ce qui permettra de supprimer la colonne B Feuil2 et masquer ces colonnes, mais l'idéal serait d'avoir un exemple de ton fichier anonymisé
https://www.cjoint.com/?DFskXDCQwm4
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
si j'ai bien compris, il s'agit d'utiliser les horaires définis qu'une seule fois.
Regarde ce montage, Feuil2 qui peut être masquée, colonne A au format texte j'ai saisi les tranches horaires, pour l'exemple de 15 minutes en 15 minutes
colonne B est une copie de la colonne B Feuil1 avec liaison de sorte que les horaires retenus Feuil1 soient recopiés, j'ai nommé cette plage Attribué
colonne C reconsidère la liste sans les horaires préalablement retenus et colonne D reconsidère la liste sans les cellules vides
Feuil1 en A la liste des profs et en B les horaires
il est possible de mettre ces combinaison de formule sur la Feuil1 ce qui permettra de supprimer la colonne B Feuil2 et masquer ces colonnes, mais l'idéal serait d'avoir un exemple de ton fichier anonymisé
https://www.cjoint.com/?DFskXDCQwm4
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
18 juin 2014 à 12:49
18 juin 2014 à 12:49
Re,
Que je comprenne ton tableau, feuille Tableau passage colonne A et B concerne bien les candidats
ensuite colonne H il faut attribuer un horaire à chaque nom de la colonne F
et colonne I on recommence avec une nouvelle liste horaire pour attribuer un horaire a chaque nom de la colonne H
c'est bien cela
Que je comprenne ton tableau, feuille Tableau passage colonne A et B concerne bien les candidats
ensuite colonne H il faut attribuer un horaire à chaque nom de la colonne F
et colonne I on recommence avec une nouvelle liste horaire pour attribuer un horaire a chaque nom de la colonne H
c'est bien cela
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
Modifié par Mike-31 le 18/06/2014 à 22:27
Modifié par Mike-31 le 18/06/2014 à 22:27
Re,
teste ton fichier, la seule chose à faire est de saisir la liste des professeurs onglet "Données_listes" colonne K
renommer les plages nommées, chaque nom doit impérativement correspondre à chaque nom de la liste en K
https://www.cjoint.com/?DFsvMXCkmTQ
vu l'importance des formules, il serait judicieux de protéger la feuille "Données_listes"
il est également possible d'automatiser les plages nommées de sorte à ne saisir que les noms des professeurs
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
teste ton fichier, la seule chose à faire est de saisir la liste des professeurs onglet "Données_listes" colonne K
renommer les plages nommées, chaque nom doit impérativement correspondre à chaque nom de la liste en K
https://www.cjoint.com/?DFsvMXCkmTQ
vu l'importance des formules, il serait judicieux de protéger la feuille "Données_listes"
il est également possible d'automatiser les plages nommées de sorte à ne saisir que les noms des professeurs
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
19 juin 2014 à 11:49
19 juin 2014 à 11:49
Re,
les formules ont leurs limites, et fait tu souhaiterais que l'heure s'efface lorsque tu changes de nom et donc te permettre de sélectionner un autre créneau horaire.
Si c'est cela, il faut ajouter un bout de VBA dans les propriétés de la feuille.
confirme le moi et je te le rajoute
les formules ont leurs limites, et fait tu souhaiterais que l'heure s'efface lorsque tu changes de nom et donc te permettre de sélectionner un autre créneau horaire.
Si c'est cela, il faut ajouter un bout de VBA dans les propriétés de la feuille.
confirme le moi et je te le rajoute
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
18 juin 2014 à 11:31
18 juin 2014 à 11:31
Merci beaucoup pour cette réponse rapide et très claire.
Par contre, le fichier est légèrement différent. En fait, on a 29 professeurs qui font passer des examens à différents élèves. Chacun de ces professeurs peut avoir un élève à faire passer toute les 20 minutes. Il faudrait juste que, lorsque l'on attribuera les horaires de passage aux élèves, cet horaire soit bloqué dans la liste d'horaires disponibles pour chaque professeur.
Je te joint mon fichier qui est composé de 2 feuilles, la feuille Données_listes qui comprend les listes conditionnelles de jurys, des matières par jurys et des professeurs qui s'occupent de chaque matière. Ensuite, il y a une liste avec les horaires de passage possible pour chaque professeur, donc 29 listes en tout.
La seconde feuille est le tableau de passage a proprement parler.
https://www.cjoint.com/?3FslFyBn9jT
Par contre, le fichier est légèrement différent. En fait, on a 29 professeurs qui font passer des examens à différents élèves. Chacun de ces professeurs peut avoir un élève à faire passer toute les 20 minutes. Il faudrait juste que, lorsque l'on attribuera les horaires de passage aux élèves, cet horaire soit bloqué dans la liste d'horaires disponibles pour chaque professeur.
Je te joint mon fichier qui est composé de 2 feuilles, la feuille Données_listes qui comprend les listes conditionnelles de jurys, des matières par jurys et des professeurs qui s'occupent de chaque matière. Ensuite, il y a une liste avec les horaires de passage possible pour chaque professeur, donc 29 listes en tout.
La seconde feuille est le tableau de passage a proprement parler.
https://www.cjoint.com/?3FslFyBn9jT
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
18 juin 2014 à 11:42
18 juin 2014 à 11:42
Re,
je te regarde le fichier et te le retourne dans quelques minutes
je te regarde le fichier et te le retourne dans quelques minutes
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
18 juin 2014 à 13:55
18 juin 2014 à 13:55
Pour les colonnes A et B, c'est ok
Ce n'est pas une nouvelle liste horaire en colonne I. Le professeur peut être sélectionné en matière 1 et matière 2 et donc en examinateur 1 ou examinateur 2. Il ne peut y avoir qu'une seule liste horaire pour chaque professeur, qu'il ai la fonction examinateur 1 ou 2. (ex: M Ol est examinateur 1 en ligne 3. Il est examinateur 2 en ligne 4. On ne doit pas pouvoir lui faire passer un élève à 8h00 en ligne 3 et en ligne 4).
Est-ce clair?
Ce n'est pas une nouvelle liste horaire en colonne I. Le professeur peut être sélectionné en matière 1 et matière 2 et donc en examinateur 1 ou examinateur 2. Il ne peut y avoir qu'une seule liste horaire pour chaque professeur, qu'il ai la fonction examinateur 1 ou 2. (ex: M Ol est examinateur 1 en ligne 3. Il est examinateur 2 en ligne 4. On ne doit pas pouvoir lui faire passer un élève à 8h00 en ligne 3 et en ligne 4).
Est-ce clair?
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
18 juin 2014 à 16:46
18 juin 2014 à 16:46
Re,
Récupère ton fichier et teste avec les noms M_Pichon, M_Lo, Mme_Li, Mme_Fes, M_Pa et M_Po
https://www.cjoint.com/?DFsqTBQSzZA
si c'est ce que tu cherches je continuerais si tu n'y arrives pas
Récupère ton fichier et teste avec les noms M_Pichon, M_Lo, Mme_Li, Mme_Fes, M_Pa et M_Po
https://www.cjoint.com/?DFsqTBQSzZA
si c'est ce que tu cherches je continuerais si tu n'y arrives pas
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
18 juin 2014 à 18:01
18 juin 2014 à 18:01
J'ai regardé le fichier.
Cela fonctionne à merveille. Je vais essayer de reproduire la même chose pour les autres professeurs. Je te recontacterai si je tombe sur un os.
Merci beaucoup pour ton aide.
Cela fonctionne à merveille. Je vais essayer de reproduire la même chose pour les autres professeurs. Je te recontacterai si je tombe sur un os.
Merci beaucoup pour ton aide.
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
19 juin 2014 à 09:38
19 juin 2014 à 09:38
Merci beaucoup Mike, tout fonctionne comme sur des roulettes.
Il ne me reste plus qu'à mettre en forme les tableaux de jurys une fois les horaire de passage définis.
Grâce à toi, j'ai réussi à mettre sur pied ce tableau, je t'en remercie encore énormément.
Il ne me reste plus qu'à mettre en forme les tableaux de jurys une fois les horaire de passage définis.
Grâce à toi, j'ai réussi à mettre sur pied ce tableau, je t'en remercie encore énormément.
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
19 juin 2014 à 11:11
19 juin 2014 à 11:11
Bonjour,
Existe-t-il des moyens de validation postérieure des horaires?
Je m'explique: Lorsque l'on veut modifier l'un des examinateurs, on peut se trouver face à un problème. En effet, si le professeur précédent était sur un créneaux déjà bloqué pour ce professeur, on a aucun affichage de chevauchement de l'horaire.
Je te joint un fichier exemple. Regarde pour M_Pichon sur les Données listes.
Sur le Tableau de passage, tu verras qu'en ligne 13 et ligne 4, on a deux fois l'horaire 8h00. J'ai juste changé le nom du professeur, de M_Lo à M_Pichon. M_Lo était bloqué sur 8h00. Le changement n'a pas modifié la case, avec une erreur, mais à autorisé un chevauchement de deux fois 8h00.
C'est problématique car ceci impose au manipulateur de rester bien vigilant, si jamais on doit remplacer un professeur en dernière minute.
https://www.cjoint.com/?DFtllTnknHo
Existe-t-il des moyens de validation postérieure des horaires?
Je m'explique: Lorsque l'on veut modifier l'un des examinateurs, on peut se trouver face à un problème. En effet, si le professeur précédent était sur un créneaux déjà bloqué pour ce professeur, on a aucun affichage de chevauchement de l'horaire.
Je te joint un fichier exemple. Regarde pour M_Pichon sur les Données listes.
Sur le Tableau de passage, tu verras qu'en ligne 13 et ligne 4, on a deux fois l'horaire 8h00. J'ai juste changé le nom du professeur, de M_Lo à M_Pichon. M_Lo était bloqué sur 8h00. Le changement n'a pas modifié la case, avec une erreur, mais à autorisé un chevauchement de deux fois 8h00.
C'est problématique car ceci impose au manipulateur de rester bien vigilant, si jamais on doit remplacer un professeur en dernière minute.
https://www.cjoint.com/?DFtllTnknHo
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
19 juin 2014 à 12:26
19 juin 2014 à 12:26
C'est exactement ça.
Merci de ton aide
Merci de ton aide
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
Modifié par Mike-31 le 19/06/2014 à 13:07
Modifié par Mike-31 le 19/06/2014 à 13:07
Re,
Regarde ma dernière retouche, feuille "Données_listes" j'ai automatisé les plages nommées, il suffit de saisir le nom des profs dans les plages rouge, les plages nommées sont anonymisées ce qui rend le fichier plus simple et les formules autonomes
j'ai ajouté le code pour effacer l'heure mais le fichier doit être enregistré en XLSM ou avec l'ancienne extension XLS
il est possible que le code demande d'être authentifié, ce qui est normal
https://www.cjoint.com/?DFtm2aPrCvC
PS:ne faudrait il pas appliqué également le code VBA aux colonnes Matières de sorte que si tu changes une matière les cellules du prof et de l'heure s'effacent également
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
Regarde ma dernière retouche, feuille "Données_listes" j'ai automatisé les plages nommées, il suffit de saisir le nom des profs dans les plages rouge, les plages nommées sont anonymisées ce qui rend le fichier plus simple et les formules autonomes
j'ai ajouté le code pour effacer l'heure mais le fichier doit être enregistré en XLSM ou avec l'ancienne extension XLS
il est possible que le code demande d'être authentifié, ce qui est normal
https://www.cjoint.com/?DFtm2aPrCvC
PS:ne faudrait il pas appliqué également le code VBA aux colonnes Matières de sorte que si tu changes une matière les cellules du prof et de l'heure s'effacent également
A+
Mike-31
Une période d'échec est un moment rêvé pour semer les graines du savoir.
keuuk
Messages postés
8
Date d'inscription
mercredi 18 juin 2014
Statut
Membre
Dernière intervention
19 juin 2014
19 juin 2014 à 15:23
19 juin 2014 à 15:23
Re,
Tu as tout à fait raison, on devrait appliquer le code VBA aux colonnes Matières et Jury, pour être certain de ne pas pouvoir faire d'erreurs.
Par contre, je ne sais pas comment récupérer le code VBA que tu as utilisé pour faire "disparaitre" l'heure. En effet, j'aimerai pouvoir le lire pour présenter ce tableau à des collègues et tenter de comprendre le mécanisme qui fait disparaitre les horaires/profs/matières.
Encore un très grand merci pour ton aide, tu me permets d'obtenir un outil d'organisation de ces épreuves orales très puissant.
Tu as tout à fait raison, on devrait appliquer le code VBA aux colonnes Matières et Jury, pour être certain de ne pas pouvoir faire d'erreurs.
Par contre, je ne sais pas comment récupérer le code VBA que tu as utilisé pour faire "disparaitre" l'heure. En effet, j'aimerai pouvoir le lire pour présenter ce tableau à des collègues et tenter de comprendre le mécanisme qui fait disparaitre les horaires/profs/matières.
Encore un très grand merci pour ton aide, tu me permets d'obtenir un outil d'organisation de ces épreuves orales très puissant.
Mike-31
Messages postés
18346
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
13 novembre 2024
5 104
19 juin 2014 à 20:00
19 juin 2014 à 20:00
Re,
pour voir le code VBA, il suffit de cliquer sur deux touches du clavier (Alt et la touche F11)
tu remarqueras ce code
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
If Not Intersect(Target, Union([E2:E16], [H2:H16])) Is Nothing Then
Target(1, 2).ClearContents
End If
If Not Intersect(Target, Union([D2:D16], [G2:G16])) Is Nothing Then
Range(Target(1, 2), Target(1, 3)).ClearContents
End If
Application.EnableEvents = True
End Sub
Explication du code
ce code se déclenchera lorsque il y aura un changement de donnée
Private Sub Worksheet_Change(ByVal Target As Range)
cette ligne est un détecteur d'erreur pour éviter le blocage d'Excel
On Error Resume Next
cette ligne neutralise certaine fonction d'Excel qui évite les déplacements pendant l'exécution du code
Application.EnableEvents = False
cette ligne limite le déclenchement du code aux deux plages définies
If Not Intersect(Target, Union([E2:E16], [H2:H16])) Is Nothing Then
cette ligne sélectionne la cellule de droite et l'efface
Target(1, 2).ClearContents
cette ligne terme l'action
End If
et on relance l'action pour les plages matières
If Not Intersect(Target, Union([D2:D16], [G2:G16])) Is Nothing Then
idem pour effacer cette fois les deux cellules à droite de la cellule qui change
Range(Target(1, 2), Target(1, 3)).ClearContents
et on rétabli les fonctions d'Excel
Application.EnableEvents = True
pour revenir sur Excel refaire Alt et F11
https://www.cjoint.com/?DFtt7soWCDS
pour voir le code VBA, il suffit de cliquer sur deux touches du clavier (Alt et la touche F11)
tu remarqueras ce code
Private Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
Application.EnableEvents = False
If Not Intersect(Target, Union([E2:E16], [H2:H16])) Is Nothing Then
Target(1, 2).ClearContents
End If
If Not Intersect(Target, Union([D2:D16], [G2:G16])) Is Nothing Then
Range(Target(1, 2), Target(1, 3)).ClearContents
End If
Application.EnableEvents = True
End Sub
Explication du code
ce code se déclenchera lorsque il y aura un changement de donnée
Private Sub Worksheet_Change(ByVal Target As Range)
cette ligne est un détecteur d'erreur pour éviter le blocage d'Excel
On Error Resume Next
cette ligne neutralise certaine fonction d'Excel qui évite les déplacements pendant l'exécution du code
Application.EnableEvents = False
cette ligne limite le déclenchement du code aux deux plages définies
If Not Intersect(Target, Union([E2:E16], [H2:H16])) Is Nothing Then
cette ligne sélectionne la cellule de droite et l'efface
Target(1, 2).ClearContents
cette ligne terme l'action
End If
et on relance l'action pour les plages matières
If Not Intersect(Target, Union([D2:D16], [G2:G16])) Is Nothing Then
idem pour effacer cette fois les deux cellules à droite de la cellule qui change
Range(Target(1, 2), Target(1, 3)).ClearContents
et on rétabli les fonctions d'Excel
Application.EnableEvents = True
pour revenir sur Excel refaire Alt et F11
https://www.cjoint.com/?DFtt7soWCDS