Bonjour à tous,
J'ai un problème sur une requête en SQL version ACCESS que j'écris dans un module.
En fait pour faire simple, j'ai 4 tables avec 3 colonnes : FINESS (texte), ETABLISSEMENT (texte), PONDERATION (numérique).
Les tables s'appellent HC_ADULTE, HC_ENFANT, HC_JEUNE_ADULTE et HC_GERIATRIE.
Chacune des tables ne comportent pas forcément les mêmes noms d'établissement, donc la jointure entre toutes les tables est impossible.
Par exemple, il peut y avoir un même établissement en HC_ADULTE et HC_GERIATRIE mais pas dans les 2 autres.
J'ai une table finale que je cherche à remplir : PONDERATION_TOTALE avec comme colonne FINESS, PONDERATION_HC, PONDERATION_HDJ (que je complèterai de la même manière que HC) et PONDERATION_TOTALE (même nom que la table d'ailleurs, ca peut changer).
En fait je cherche à sommer les pondérations d'un établissement présent dans une ou plusieurs tables et remplir les colonnes FINESS (qui est le numéro d'identité de l'établissement), ETABLISSEMENT et PONDERATION_HC qui est la somme des pondération des autres tables par établissement.
Voilà mon code (CHATGPT ne sait pas me résoudre mon problème) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Option Explicit Sub Ajout_PONDERATION_TOTALE() DoCmd.SetWarnings False DoCmd.RunSQL "DELETE * FROM PONDERATION_TOTALE" 'Import des pondérations HC, HDJ et total par établissement DoCmd.RunSQL "INSERT INTO PONDERATION_TOTALE (FINESS, ETABLISSEMENT, PONDERATION_HC)" "SELECT FINESS, ETABLISSEMENT, SUM([PONDERATION]) AS PONDERATION_HC" FROM ( SELECT FINESS, ETABLISSEMENT, PONDERATION FROM HC_ADULTE UNION ALL SELECT FINESS, ETABLISSEMENT, PONDERATION FROM HC_ENFANT UNION ALL SELECT FINESS, ETABLISSEMENT, PONDERATION FROM HC_JEUNE_ADULTE UNION ALL SELECT FINESS, ETABLISSEMENT, PONDERATION FROM HC_GERIATRIE) GROUP BY ETABLISSEMENT End Sub
Tout est en rouge sauf la première ligne....car en erreur. Merci de votre aide !
Partager