Probleme avec formulaire et sous formulaire independant.

Résolu
Salut,
Je vous salue tous, j'ai un grand problème sur Access.
J'ai créé une base de données permettant de faire la gestion d'une école professionnelle. Le problème c'est que: j'ai un sous formulaire cours qui est totalement indépendant qui doit afficher les informations de la table cours selon le numéro étudiant qui est affiche sur le formulaire principale (formulaire étudiant) qui lui-même est aussi indépendant.

J'ai tenté de le faire par diverse façons, mais rien ne fonctionne, la dernière façon qui est fonctionner affiche un seul cours pour l'étudiant encours or, il existe plusieurs cours pour cet étudiant.
Aidez-moi à résoudre le problème svp.


pour cet etudiant il existe deux cours, 1 et 2, seule le cours est affiche.

les codes vba utilizes sont les suivants:

Option Compare Database
Option Explicit
Dim s As String ' variable declarer pour recevoir la valeure de la requete du sous formulaire
Dim rsEtud As DAO.Recordset ' pour le formulaire principale
Dim rs As DAO.Recordset 'sous formulaire
Dim rsDb As DAO.Database

Sub AfficherDonnees()
' remplissage des champs du formulaire principale
Me.NoEtu = rsEtud("NoEtu")
Me.Nom = rsEtud("Nom")
Me.Prenom = rsEtud("Prenom")
Me.Sexe = rsEtud("Sexe")
Me.Option = rsEtud("Option")
Me.NoGrp = rsEtud("NoGrp")

s = "SELECT * FROM Cours WHERE NoEtud=" & Me.NoEtu & ";"
Set rs = rsDb.OpenRecordset(s, dbOpenDynaset, dbSeeChanges)

If rs.EOF = False Then
'remplissage des champs du sous formulaire

[sfCours].Form!NoCours = rs("NoCours")
[sfCours].Form!NomC = rs("NomC")
[sfCours].Form!DateC = rs("DateC")
[sfCours].Form!NoEtud = rs("NoEtud")
Else
[sfCours].Form!NoCours = ""
[sfCours].Form!NomC = ""
[sfCours].Form!DateC = ""
[sfCours].Form!NoEtud = ""
End If
End Sub

rivate Sub Form_Load()
Set rsDb = CurrentDb

Set rsEtud = rsDb.OpenRecordset("ReqEtudiants", dbOpenDynaset)

AfficherDonnees
End Sub

Private Sub Form_Close()
rs.Close
rsEtud.Close
rsDb.Close
Set rs = Nothing
Set rsEtud = Nothing
Set rsDb = Nothing
End Sub

je veux que tous les cours (NoEtud) qui ont le meme numero de l'etudiant encours (Me.NoEtu) apparaissent dans le sous formulair.

8 réponses

  1. Bonjour samgione

    Avez-vous déjà une base de données.
    S Oui pouvez vous me données la composition des tables.

    Sinon je peux vous aider à la concevoir et à réaliser les requêtes SQl.
    2
    1. bonjour
      J'ai une base sur la gestion d'un college.
      Est ce que cela peut te convenir ?
      0
      1. Salut à tous, spécialement à Delphine et Castours.
        oui castours j'aimerais bien jetter un coudeuille sur votre base, ça pourra m'aider.

        et oui Delphine j'ai deja une base de donnees sur la quelle est construit le formulaire cidessus, voice le lien sur lequel vous pouvez telecharger la base: https://www.developpez.net/forums/d1478692/logiciels/microsoft-office/access/probleme-d-affichage-donnees-sous-formulaire-access-access-unbound-sub-form/

        et si vous pouvez m'aider à concevoir la base et à realizer les requites SQL, ce serait tres sympas.

        merci d'avance à vous tous.
        0
        1. S'il vous plait aider moi d'une façon ou d'un autre, je suis vraiment coincé.
          0
          1. Bonsoir
            Je te joins la base dans ce lien. Cette base ne vient pas de moi.
            Dis moi ce que tu en penses

            http://cjoint.com/?DKbtXGlAtEJ
            0
            1. Bonjour samgione

              je n'arrive pas à accéder à votre base de données.

              Sinon je vous indique comment je ferai la base de données

              etudiants
              id_etudiant
              nom
              prenom
              date_naissance
              adresse
              ...

              matieres
              id_cours
              nom

              professeurs
              id_professeur
              nom
              telephone

              salles
              id_salle
              nom

              classes
              iid_classe
              nom (ex seconde_1)
              id_prof_principal

              cours
              id_cours
              id_matiere
              id_prof
              id_classe
              date
              heure

              Pour ce qui est du formulaire, si vous voulez avoir la liste des cours suivis par un étudiant (ou élève comme vous voulez) je ferai un formulaire enajax.

              Au début de la page la liste des élèves ferai chargée, il n'y aurai plus qu'à sélectionné l'élève que vous voulez.
              Selon votre choix, vous aurez la liste des cours le concernant

              Essayez comme çà
              @+
              2
              1. Bonjour
                J'ai modifié ta base en creant un nouveau formulaire et sous formulaire mais aussi de nouvelles tables dans ce lien.
                donne une reponse au 2 messages que je t'ai envoyé

                http://cjoint.com/?DKdjTdtuBGZ
                0
                1. Salut mes freres, salut castours,
                  je suis presque satisfait avec les aides que vous m'avez apporté, castours, je suis reelement inspirer par les deux exemples que vous m'avez proposé, et je comprend bien la logique du formulaire F_Cours et du sous form S/F_Etudiants "un cours peut avoir plusieurs etudiants" merci pour cette idee geniale.

                  mais, est-ce que le S/F_Etudiants el F_Cours ne peuvent pas etre des forms independants (unbound form). i.e est ce qu'on ne peut pas faire la meme chose sur des formulaire non lies ou independant en passant par le dao?

                  merci grandement pour les aides que vous m'avez apportes tous.
                  0
                  1. Bonjour
                    Pourquoi veux tu des Forms indépendants?
                    Pour quel but?
                    Maintenant Il faut gerer les heures et date de cours avec les professeurs ainsi que le niveau des classes.
                    0