Classement / Rangs d'enregistrements (encore et encore)
3 réponses
le_pouvoir_des_utopistes
Bonjour =E0 tous,
Ce sujet a =E9t=E9 abord=E9 maintes fois.
Je m'excuse donc pour cette nouvelle question mais si je la pose ...
c'est que je n'ai pas r=E9ussi =E0 appliquer les r=E9ponses trouv=E9es.
Mon besoin :
J'ai la table suivante :
El=E8ve
Mati=E8re
Date
Note
Je souhaiterai r=E9alis=E9 un classement des notes des =E9l=E8ves par
mati=E8res et par dates.
Ceci est une variante de l'exemple le plus souvent cit=E9 qui ne
comporte qu'une colonne =E9l=E8ve et qui est d=E9crit sur le site :
http://access.developpez.com/sources/?page=3DRequete#RequeteClassement
J'ai cherch=E9 =E0 ins=E9rer des group by et des order by mais sans
succ=E8s.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
Bonjour,
Je n'ai pas regardé le lien mais pour avoir un classement par matiere sur la base d'une table tNotes, en supposant que les contôles par matière ont lieu à la même date pour tout le groupe d'élèves : Mettre les champs, tri croissant sur la matière, tri croissant sur la note, et un champ calculé : ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents controles par matière, peut-être rajouter une condition supplémentaire au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois. Je m'excuse donc pour cette nouvelle question mais si je la pose ... c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante : Elève Matière Date Note
Je souhaiterai réalisé un classement des notes des élèves par matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne comporte qu'une colonne élève et qui est décrit sur le site : http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Je n'ai pas regardé le lien mais pour avoir un classement par matiere
sur la base d'une table tNotes, en supposant que les contôles par
matière ont lieu à la même date pour tout le groupe d'élèves :
Mettre les champs,
tri croissant sur la matière,
tri croissant sur la note,
et un champ calculé :
ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and
note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents
controles par matière, peut-être rajouter une condition supplémentaire
au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois.
Je m'excuse donc pour cette nouvelle question mais si je la pose ...
c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante :
Elève
Matière
Date
Note
Je souhaiterai réalisé un classement des notes des élèves par
matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne
comporte qu'une colonne élève et qui est décrit sur le site :
http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans
succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Je n'ai pas regardé le lien mais pour avoir un classement par matiere sur la base d'une table tNotes, en supposant que les contôles par matière ont lieu à la même date pour tout le groupe d'élèves : Mettre les champs, tri croissant sur la matière, tri croissant sur la note, et un champ calculé : ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents controles par matière, peut-être rajouter une condition supplémentaire au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois. Je m'excuse donc pour cette nouvelle question mais si je la pose ... c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante : Elève Matière Date Note
Je souhaiterai réalisé un classement des notes des élèves par matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne comporte qu'une colonne élève et qui est décrit sur le site : http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
le_pouvoir_des_utopistes
Merci Eric pour ta réponse et pour cette idée
J'ai testé la fonction mais elle me renvoie le message d'erreur suivant :
Erreur d'éxécution 2465 Impossible de trouver le champ '|' auquel il fait référence dans votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click() Dim Rang As String Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and Note>" & [Note]) + 1 DropTableIfExists "tbl_note2" requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM tbl_note" CurrentDb.Execute requete End Sub
Sachant que mon objet requete a été défini dans un module séparé et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
Eric wrote:
Bonjour,
Je n'ai pas regardé le lien mais pour avoir un classement par matiere sur la base d'une table tNotes, en supposant que les contôles par matière ont lieu à la même date pour tout le groupe d'élèves : Mettre les champs, tri croissant sur la matière, tri croissant sur la note, et un champ calculé : ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents controles par matière, peut-être rajouter une condition supplémenta ire au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois. Je m'excuse donc pour cette nouvelle question mais si je la pose ... c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante : Elève Matière Date Note
Je souhaiterai réalisé un classement des notes des élèves par matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne comporte qu'une colonne élève et qui est décrit sur le site : http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl= fr
Merci Eric pour ta réponse et pour cette idée
J'ai testé la fonction mais elle me renvoie le message d'erreur
suivant :
Erreur d'éxécution 2465
Impossible de trouver le champ '|' auquel il fait référence dans
votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click()
Dim Rang As String
Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and
Note>" & [Note]) + 1
DropTableIfExists "tbl_note2"
requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM
tbl_note"
CurrentDb.Execute requete
End Sub
Sachant que mon objet requete a été défini dans un module séparé
et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
Eric wrote:
Bonjour,
Je n'ai pas regardé le lien mais pour avoir un classement par matiere
sur la base d'une table tNotes, en supposant que les contôles par
matière ont lieu à la même date pour tout le groupe d'élèves :
Mettre les champs,
tri croissant sur la matière,
tri croissant sur la note,
et un champ calculé :
ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and
note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents
controles par matière, peut-être rajouter une condition supplémenta ire
au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois.
Je m'excuse donc pour cette nouvelle question mais si je la pose ...
c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante :
Elève
Matière
Date
Note
Je souhaiterai réalisé un classement des notes des élèves par
matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne
comporte qu'une colonne élève et qui est décrit sur le site :
http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans
succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl= fr
J'ai testé la fonction mais elle me renvoie le message d'erreur suivant :
Erreur d'éxécution 2465 Impossible de trouver le champ '|' auquel il fait référence dans votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click() Dim Rang As String Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and Note>" & [Note]) + 1 DropTableIfExists "tbl_note2" requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM tbl_note" CurrentDb.Execute requete End Sub
Sachant que mon objet requete a été défini dans un module séparé et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
Eric wrote:
Bonjour,
Je n'ai pas regardé le lien mais pour avoir un classement par matiere sur la base d'une table tNotes, en supposant que les contôles par matière ont lieu à la même date pour tout le groupe d'élèves : Mettre les champs, tri croissant sur la matière, tri croissant sur la note, et un champ calculé : ClassementMatiere: CpteDom("*";"tNotes";"Matiere='" & [matiere] & "' and note>" & [note])+1
Par extension, pour avoir le classement sur la date des différents controles par matière, peut-être rajouter une condition supplémenta ire au DCount() ou CpteDom().
Bonjour à tous,
Ce sujet a été abordé maintes fois. Je m'excuse donc pour cette nouvelle question mais si je la pose ... c'est que je n'ai pas réussi à appliquer les réponses trouvées.
Mon besoin :
J'ai la table suivante : Elève Matière Date Note
Je souhaiterai réalisé un classement des notes des élèves par matières et par dates.
Ceci est une variante de l'exemple le plus souvent cité qui ne comporte qu'une colonne élève et qui est décrit sur le site : http://access.developpez.com/sources/?page=Requete#RequeteClassement
J'ai cherché à insérer des group by et des order by mais sans succès.
Merci d'avance pour vos judicieuses réponses
Amicalement
Utopie2025
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl= fr
Eric
Bonsoir Arno,
Le problème vient de ton instruction SQL de création de la table tbl_note2. Tu utilises l'instruction SELECT ... INTO ... FROM ... Derrière le mot clé SELECT tu dois mettre des noms de champs et non des valeurs (issues de ta variable Rang) comme dans cet exemple: SELECT LeNom, LePrenom INTO UneAutreTable From LaTable (WHERE ...) De plus, tu déclares Rang comme String alors que c'est un entier ou Entier Long. D'autre part, telle que publiée, ta procédure ne calcule qu'une fois le rang !
Si tu veux ajouter dans la table le classement par matière et note, le plus simple serait de créer la requête te donnant ce classement, puis de faire un Insert Into From cette requête (avec une condition Where éventuellement sur les dates) ou pour une création de table SELECT ... INTO ... FROM cette requête.
Pour un ajout dans une table: INSERT INTO tbl_Note2 ( Matiere, Eleve, Rang ) SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere FROM RQNotes; ou encore pour une création de table : SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere INTO tbl_Notes2 FROM RQNotes;
Merci Eric pour ta réponse et pour cette idée
J'ai testé la fonction mais elle me renvoie le message d'erreur suivant :
Erreur d'éxécution 2465 Impossible de trouver le champ '|' auquel il fait référence dans votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click() Dim Rang As String Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and Note>" & [Note]) + 1 DropTableIfExists "tbl_note2" requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM tbl_note" CurrentDb.Execute requete End Sub
Sachant que mon objet requete a été défini dans un module séparé et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonsoir Arno,
Le problème vient de ton instruction SQL de création de la table tbl_note2.
Tu utilises l'instruction SELECT ... INTO ... FROM ...
Derrière le mot clé SELECT tu dois mettre des noms de champs et non des
valeurs (issues de ta variable Rang) comme dans cet exemple:
SELECT LeNom, LePrenom INTO UneAutreTable From LaTable (WHERE ...)
De plus, tu déclares Rang comme String alors que c'est un entier ou
Entier Long. D'autre part, telle que publiée, ta procédure ne calcule
qu'une fois le rang !
Si tu veux ajouter dans la table le classement par matière et note, le
plus simple serait de créer la requête te donnant ce classement, puis de
faire un Insert Into From cette requête (avec une condition Where
éventuellement sur les dates) ou pour une création de table SELECT ...
INTO ... FROM cette requête.
Pour un ajout dans une table:
INSERT INTO tbl_Note2 ( Matiere, Eleve, Rang )
SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere
FROM RQNotes;
ou encore pour une création de table :
SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere INTO
tbl_Notes2
FROM RQNotes;
Merci Eric pour ta réponse et pour cette idée
J'ai testé la fonction mais elle me renvoie le message d'erreur
suivant :
Erreur d'éxécution 2465
Impossible de trouver le champ '|' auquel il fait référence dans
votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click()
Dim Rang As String
Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and
Note>" & [Note]) + 1
DropTableIfExists "tbl_note2"
requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM
tbl_note"
CurrentDb.Execute requete
End Sub
Sachant que mon objet requete a été défini dans un module séparé
et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Le problème vient de ton instruction SQL de création de la table tbl_note2. Tu utilises l'instruction SELECT ... INTO ... FROM ... Derrière le mot clé SELECT tu dois mettre des noms de champs et non des valeurs (issues de ta variable Rang) comme dans cet exemple: SELECT LeNom, LePrenom INTO UneAutreTable From LaTable (WHERE ...) De plus, tu déclares Rang comme String alors que c'est un entier ou Entier Long. D'autre part, telle que publiée, ta procédure ne calcule qu'une fois le rang !
Si tu veux ajouter dans la table le classement par matière et note, le plus simple serait de créer la requête te donnant ce classement, puis de faire un Insert Into From cette requête (avec une condition Where éventuellement sur les dates) ou pour une création de table SELECT ... INTO ... FROM cette requête.
Pour un ajout dans une table: INSERT INTO tbl_Note2 ( Matiere, Eleve, Rang ) SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere FROM RQNotes; ou encore pour une création de table : SELECT RQNotes.Matiere, RQNotes.Eleve, RQNotes.ClassementMatiere INTO tbl_Notes2 FROM RQNotes;
Merci Eric pour ta réponse et pour cette idée
J'ai testé la fonction mais elle me renvoie le message d'erreur suivant :
Erreur d'éxécution 2465 Impossible de trouver le champ '|' auquel il fait référence dans votre expression
Ci-joint le code que j'ai saisi :
Private Sub Commande0_Click() Dim Rang As String Rang = DCount("*", "tbl_note", "Matière='" & [Matière] & "' and Note>" & [Note]) + 1 DropTableIfExists "tbl_note2" requete = "SELECT Nom, Matière, Note, " & Rang & " INTO tbl_note2 FROM tbl_note" CurrentDb.Execute requete End Sub
Sachant que mon objet requete a été défini dans un module séparé et qu'il fonctionne correctement.
Merci d'avance pour ton aide
Cordialemement
Arno
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr