Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Insérer depuis une requête dans une table

3 réponses
Avatar
youssefalaouia
Bonjour,
j'ai une table T_Notes :
(ID_Notes,ID_Candidat,Matiere,Moyval,Classement).
pour calculer le rang des moyennes j'ai crée une requête ;R_Rang:
Classement: CpteDom("*";"R_Notes";"[Moyval]>" & Remplacer([Moyval];",";".") & " AND [Matiere]='" & [Matiere] & "'")+1
je me lance dans le SQL dans vba mais j'ai du mal comprendre la syntaxe pour copier le champ Classement calculé (R_Rang) dans le champ(Classement) de la table T_Notes .
Merci pour toute réponse.

3 réponses

Avatar
Michel__D
Bonjour,
Le 06/10/2019 à 00:43, youssefalaouia a écrit :
Bonjour,
j'ai une table T_Notes :
(ID_Notes,ID_Candidat,Matiere,Moyval,Classement).
pour calculer le rang des moyennes j'ai crée une requête ;R_Rang:
Classement: CpteDom("*";"R_Notes";"[Moyval]>" & Remplacer([Moyval];",";".") & "
AND [Matiere]='" & [Matiere] & "'")+1
je me lance dans le SQL dans vba mais j'ai du mal comprendre la syntaxe pour
copier le champ Classement calculé (R_Rang) dans le champ(Classement) de la
table T_Notes .
Merci pour toute réponse.

"R_Notes" (dans ta requête R_Rang) correspond à quoi ?
Après la nécessité de stocker le résultat d'un champ calculé est discutable.
Sinon pour mettre à jour une table :
https://support.office.com/fr-fr/article/cr%C3%A9er-et-ex%C3%A9cuter-une-requ%C3%AAte-mise-%C3%A0-jour-9dddc97c-f17d-43f4-a729-35e5ee1e0514
Avatar
youssefalaouia
Le dimanche 06 Octobre 2019 à 12:23 par Michel__D :
Bonjour,
Le 06/10/2019 à 00:43, youssefalaouia a écrit :
Bonjour,
j'ai une table T_Notes :
(ID_Notes,ID_Candidat,Matiere,Moyval,Classement).
pour calculer le rang des moyennes j'ai crée une requête ;R_Rang:
Classement: CpteDom("*";"R_Notes";"[Moyval]>"
& Remplacer([Moyval];",";".") & "
AND [Matiere]='" & [Matiere] & "'")+1
je me lance dans le SQL dans vba mais j'ai du mal comprendre la syntaxe pour
copier le champ Classement calculé (R_Rang) dans le champ(Classement)
de la
table T_Notes .
Merci pour toute réponse.
"R_Notes" (dans ta requête R_Rang) correspond à quoi ?
Après la nécessité de stocker le résultat d'un
champ calculé est discutable.
Sinon pour mettre à jour une table :
https://support.office.com/fr-fr/article/cr%C3%A9er-et-ex%C3%A9cuter-une-requ%C3%AAte-mise-%C3%A0-jour-9dddc97c-f17d-43f4-a729-35e5ee1e0514
Bonjour;
je suis désolé Mr Michel__D ; j'ai essayé de résumer mon travail pour ne pas donner plus de détails cause d' alourdir ma question,alors que non,
je m'explique dans ma table j'ai un champ moyenne (texte court) (que je n'ai pas déclaré ) ou je stock des notes des absent des exclus)
alors pour calculer le rang j'ai crée une requête qui transforme ce champ en numérique nommé : R_Notes:basée sur la table T_Notes
Moyval: CDbl(VraiFaux([Moyenne]="exclu";-2;VraiFaux([Moyenne]="absent";-1;[Moyenne])))
et enfin pour calculer le rang une requête nommée R_Rang
classement : CpteDom("*";"R_Notes";"[Moyval]>" & Remplacer([Moyval];",";".") & " AND [Matiere]='" & [Matiere] & "'")+1
Alors tous simplement je cherche à copier le résultat du classement dans la table T_Notes.
je m'excuse j'au du être claire depuis le début..
Avatar
Michel__D
Bonjour,
Le 06/10/2019 à 13:19, youssefalaouia a écrit :
Le dimanche 06 Octobre 2019 à 12:23 par Michel__D :
Bonjour,
Le 06/10/2019 à 00:43, youssefalaouia a écrit :
Bonjour,
j'ai une table T_Notes :
(ID_Notes,ID_Candidat,Matiere,Moyval,Classement).
pour calculer le rang des moyennes j'ai crée une requête ;R_Rang:
Classement: CpteDom("*";"R_Notes";"[Moyval]>"
& Remplacer([Moyval];",";".") & "
AND [Matiere]='" & [Matiere] & "'")+1
je me lance dans le SQL dans vba mais j'ai du mal comprendre la syntaxe pour
copier le champ Classement calculé (R_Rang) dans le champ(Classement)
de la
table T_Notes .
Merci pour toute réponse.

"R_Notes" (dans ta requête R_Rang) correspond à quoi ?
Après la nécessité de stocker le résultat d'un
champ calculé est discutable.
Sinon pour mettre à jour une table :

https://support.office.com/fr-fr/article/cr%C3%A9er-et-ex%C3%A9cuter-une-requ%C3%AAte-mise-%C3%A0-jour-9dddc97c-f17d-43f4-a729-35e5ee1e0514
Bonjour;
je suis désolé Mr Michel__D ; j'ai essayé de résumer mon travail pour ne pas
donner plus de détails cause d' alourdir ma question,alors que non,
je m'explique dans ma table j'ai un champ moyenne (texte court) (que je n'ai pas
déclaré ) ou je stock des notes des absent des exclus)
alors pour calculer le rang j'ai crée une requête qui transforme ce champ en
numérique nommé : R_Notes:basée sur la table T_Notes
Moyval:
CDbl(VraiFaux([Moyenne]="exclu";-2;VraiFaux([Moyenne]="absent";-1;[Moyenne])))
et enfin pour calculer le rang une requête nommée R_Rang
classement : CpteDom("*";"R_Notes";"[Moyval]>" & Remplacer([Moyval];",";".") & "
AND [Matiere]='" & [Matiere] & "'")+1
Alors tous simplement je cherche à copier le résultat du classement dans la
table T_Notes.

Non, il ne faut pas copier le résultat dans une table, par contre tu peux (ré)utiliser la requête
suivante pour avoir le rang de chaque candidat par matière (mode SQL) :
SELECT T.[ID_Notes], T.[ID_Candidat], T.Matiere, T.Moyval, Count(T1.Moyval) AS Classement
FROM T_Notes AS T INNER JOIN T_Notes AS T1 ON (T.Matiere=T1.Matiere) AND (T.Moyval<=T1.Moyval)
GROUP BY T.[ID_Notes], T.[ID_Candidat], T.Matiere, T.Moyval
ORDER BY T.Matiere DESC , T.Moyval DESC;