XL 2010 [VBA] Planning de surveillance des examens

Houha

XLDnaute Nouveau
Bonjour,

Je voudrais "traduire" les données & conditions ci-dessous en code VBA, mais cela dépasse mes compétences. Si quelqu’un peut m'aider, je serai très reconnaissant

1. Données

a. J’ai 30 enseignants de 3 différents établissements, 10 enseignants de chaque établissement

b. J’ai 05 salles d’examen

c. 2 examens/jour/classe pendant les 3 premier jours et un (1) seul examen le 4ème jour pour une classe X.

NB: Il y 2 "périodes" par jour, "période1" correspond à la matinée & "période2" à l'après-midi.

2. Critères (conditions) par ordre de priorité

a. l’enseignant d’une matière X ne peut pas surveiller l’examen de la matière qu’il enseigne.

b. chaque examen est surveillé par 3 enseignants dont au moins un (1) enseignant qui n’est pas du même établissement que les 2 autres enseignants.

c. un enseignant ne peut être affecté à une salle plus que 3 fois

c. tous les enseignants doivent avoir plus ou moins le même nombre de périodes de surveillance + une ½ journée de repos (1 période off)

Je joins un tableau d'exemple.

Merci de votre aide
 

Pièces jointes

  • Tableau de surveillance.xlsx
    11.5 KB · Affichages: 46

JBARBE

XLDnaute Barbatruc
Bonjour à tous,
Avant de pouvoir traduire en VBA, serait-il possible de "traduire" les données & conditions si possible manuellement !
Par exemple pour l'emploi de l'enseignant "Pr1.1" !
Cela serait plus facile de comprendre les dispositions à prendre pour effectuer une macro !
Bonne journée !
 

Houha

XLDnaute Nouveau
Bonjour à tous,
Avant de pouvoir traduire en VBA, serait-il possible de "traduire" les données & conditions si possible manuellement !
Par exemple pour l'emploi de l'enseignant "Pr1.1" !
Cela serait plus facile de comprendre les dispositions à prendre pour effectuer une macro !
Bonne journée !
Bonjour,
Que voulez vous dire par "les traduire manuellement"?
PS Pr.1.1 enseigne une matière M1, donc il peut pas être affecté à une salle ou il déroule l'examen de cette matière.
 

Houha

XLDnaute Nouveau
Re,
Nous ne pouvons nous mettre à ta place !
Il faut un exemple fait manuellement pour pouvoir le traduire en VBA !
Bonne journée !
Par example, Prof 1.1, Prof 2.1 & Prof 3.1 enseignent la matière M1 (comme indiqué dans la tableau à gauche). Ces profs là ne peuvent pas être affectés à une salle durant l'examen de cette matière qui déroulera l la 1ère période du 1er jour comme indiqué dans le 2ème tableau.
 

JBARBE

XLDnaute Barbatruc
Par example, Prof 1.1, Prof 2.1 & Prof 3.1 enseignent la matière M1 (comme indiqué dans la tableau à gauche). Ces profs là ne peuvent pas être affectés à une salle durant l'examen de cette matière qui déroulera l la 1ère période du 1er jour comme indiqué dans le 2ème tableau.
Re,
Toujours pas compris !
La 1ere période du 1er jour la matière étant M1 donc Prof 1.1, Prof 2.1 & Prof 3.1 enseignent la matière M1 comment vais-je attribuer les enseignants adéquates pour cette matière !
@+
 

Houha

XLDnaute Nouveau
Re,
Toujours pas compris !
La 1ere période du 1er jour la matière étant M1 donc Prof 1.1, Prof 2.1 & Prof 3.1 enseignent la matière M1 comment vais-je attribuer les enseignants adéquates pour cette matière !
@+
Cela veut dire que tout prof qui n'enseigne pas M1 peut surveiller l'examen de cette matière.
PS J'ai posé cette question il y 3 jrs & j'ai une réponse. Quelqu'un à pu affecter les profs à des salles en respectant la condition en question (voir fichier joint), mais je sais pas comment il a pu avoir cela, en plus c’était pas en BVA.
 

Pièces jointes

  • Tableau de surveillance_résolu.xlsx
    12.5 KB · Affichages: 56

GALOUGALOU

XLDnaute Accro
bonjour houha bonjour le fil bonjour le forum
le classeur que vous nous présentez dans le #7 à l'air très bien. (ce n'est pas en vba, mais c'est très bien avec les formules)
que lui reprochez vous ?
vous désirez une évolution par rapport à celui ci ou vous désirez une autre conception ?
cordialement
galougalou
 

Houha

XLDnaute Nouveau
bonjour houha bonjour le fil bonjour le forum
le classeur que vous nous présentez dans le #7 à l'air très bien. (ce n'est pas en vba, mais c'est très bien avec les formules)
que lui reprochez vous ?
vous désirez une évolution par rapport à celui ci ou vous désirez une autre conception ?
cordialement
galougalou
Bjr GalouGalou & merci pr votre réponse.
C'est vrai, le classeur dans le #7 à l'air très bien, mais c'est si par example on a deux (2) Prof 2.1, cette formule n'est plus valide (l'un de ces 2 prof va être placé dans une salle ou il doit pas être). C'est pr cela que j'essaie d'utiliser le VBA. J'ai "réussi" à traduire la 1ère condition (a. l’enseignant d’une matière X ne peut pas surveiller l’examen de la matière qu’il enseigne) en code (ci-dessous). J'essaie mnt de comprendre comment je peux appliquer ce code au reste des cellules.

Sub Jour1()
If Range("j8") <> Range("c3") Then
Range("k8") = Range("b3") & Range("b13") & Range("b23")
ElseIf Range("j8") = Range("c3") Then
Range("k8") = Range("b4") & Range("b14") & Range("b24")
End If
End Sub
 

Pièces jointes

  • MyFirstModule.JPG
    MyFirstModule.JPG
    73.7 KB · Affichages: 52

GALOUGALOU

XLDnaute Accro
re pour votre macro une boucle sera la solution mais
quand même je me pose une question
avez vous vu que dans le classeur #7, il n'a pas été occulté que le prof enseignant une matière ne puisse pas surveiller cette matière.
cordialement
 

Houha

XLDnaute Nouveau
Bjr GalouGalou & merci pr votre réponse.
C'est vrai, le classeur dans le #7 à l'air très bien, mais c'est si par example on a deux (2) Prof 2.1, cette formule n'est plus valide (l'un de ces 2 prof va être placé dans une salle ou il doit pas être). C'est pr cela que j'essaie d'utiliser le VBA. J'ai "réussi" à traduire la 1ère condition (a. l’enseignant d’une matière X ne peut pas surveiller l’examen de la matière qu’il enseigne) en code (ci-dessous). J'essaie mnt de comprendre comment je peux appliquer ce code au reste des cellules.
J'e voudrais appliquer le code ci-joint à la cellule "K9" pr que les profs qui sont déjà affecté à la salle 1 ne soient pas affecté à la salle 2, mais ça marche pas. ça me me donne le meme résultats dans les 2 cases! J'arrive pas à identifier l’erreur dans ce code!
 

Pièces jointes

  • Capture_2.JPG
    Capture_2.JPG
    21.5 KB · Affichages: 37
  • Capture_3.JPG
    Capture_3.JPG
    47.1 KB · Affichages: 35

Discussions similaires