OVH Cloud OVH Cloud

Transfert Calculs d'une requêté dans une autre

1 réponse
Avatar
pierre CHO
Bonjour,
Je suis sous Windows 98 et je travaille avec Access 2000
Je voudrais ins=E9rer le r=E9sultat du calcul d'un champ d'une=20
requ=EAte s=E9lection dans un champ d'une autre Requ=EAte=20
s=E9lection ou d'une table. Je ne vois pas de solution avec=20
une Requ=EAte MAJ.

Explications:
J'ai une TABLE "ANIMES" (dans laquelle j'ai deux=20
champs "ANIMACTI" et "NUMACTI"). J'=E9tabli une requ=EAte=20
s=E9lection qui compte
- les enregistrements des cellules de m=EAmes noms (du=20
champ" NUMACTI" :{compteur : expression})
- par cellules regroup=E9es du champ (ANIMACTI :=20
{regroupement}).

Je voudrais ins=E9rer le r=E9sultat de ce compteur (qui=20
d=E9compte les anim=E9s par animateurs)
- dans une table "Table ANIMATEURS"qui poss=E8de un=20
champ =AB ANIMACTI =BB (sansdoublon et dont le type de donn=E9es=20
est identique =E0 celui de la TABLE"ANIMES").
- par l'interm=E9diaire d'une requ=EAte comprenant tous les=20
champs (j'ai ouvert un champ (AFFECTES: {num=E9rique}) dans=20
la table ANIMATEURS) pour essayer d'y ins=E9rer le r=E9sultat=20
du calcul.
Malgr=E9 mes nombreux essais, toujours sans succ=E8s.

Les relations des deux tables par le champ (ANIMACTI) sont=20
de un =E0 un (j'ai essay=E9 les trois combinaisons)
.
J'ai essay=E9 (AFFECTES =3D Compteur) et d'autres=20
combinaisons avec la fonction VraiFaux, toujours sans=20
succ=E8s.
Je dois ne pas faire quelque chose qui m'en emp=EAche, Mais=20
quoi ?

J'ai aussi essay=E9 avec la fonction "CpteDom". Mais, lors=20
de mes essais, j'ai toujours comme r=E9sultat " erreur"=20
ou "nom?".sans autre observation particuli=E8re

Merci si tu peux m'aider !
Bien entendu je peux fournir toutes les explications=20
compl=E9mentaires qui seraient utiles
Pierre CHO
=20

1 réponse

Avatar
Mrs Pomemboo
Bonjour Pierre...

Et bien, j'ai aussi tenté plusieurs choses, sans succès aussi ! Peut-être un
expert pourra-t-il nous renseigner d'avantage.

Pour ma part, je sais pas comment tu te débrouilles en VBA, mais voici une
solution que j'envisagerais.

En ce basant sur la requête que tu as faite à l'aide de ta table ANIMES, et
que je nomme [REQUETE] pour les besoins de la cause, voilà ce que j'ai fait
et qui fonctionne parfaitement.
[REQUETE]
colonne 1 : champs [ANIMACTI] regroupé
colonne 2 : Compte : Compte([NUMACTI] expression

À l'endroit où tu veux appeller la mise à jour de ta table ANIMATEURS, tu
insères le bout de code suivant :
******************************
Dim bd As Database, rst As Recordset
Set bd = CurrentDb()
Set rst = bd.OpenRecordset("ANIMATEURS", dbOpenTable)

With rst
'vérifier que animateurs a des enregistrements
If Not .BOF Then
.MoveFirst
'pour tous les [ANIMACTI] de la table
Do While Not .EOF
.Edit
'mettre à jour selon la valeur renvoyée par DLookup (RechDom)
![AFFECTES] = Nz(DLookup("[COMPTE]", "COMPTE", _
"[ANIMACTI]=" & ![ANIMACTI]), 0)
.Update
.MoveNext
Loop
End If
End With

rst.Close
Set rst = Nothing
Set bd = Nothing
****************************

Si jamais tu as des questions, n'hésites pas !
Bonne journée !
Mrs Pomemboo

---------------------------------------------------------
Bonjour,
Je suis sous Windows 98 et je travaille avec Access 2000
Je voudrais insérer le résultat du calcul d'un champ d'une
requête sélection dans un champ d'une autre Requête
sélection ou d'une table. Je ne vois pas de solution avec
une Requête MAJ.

Explications:
J'ai une TABLE "ANIMES" (dans laquelle j'ai deux
champs "ANIMACTI" et "NUMACTI"). J'établi une requête
sélection qui compte
- les enregistrements des cellules de mêmes noms (du
champ" NUMACTI" :{compteur : expression})
- par cellules regroupées du champ (ANIMACTI :
{regroupement}).

Je voudrais insérer le résultat de ce compteur (qui
décompte les animés par animateurs)
- dans une table "Table ANIMATEURS"qui possède un
champ « ANIMACTI » (sansdoublon et dont le type de données
est identique à celui de la TABLE"ANIMES").
- par l'intermédiaire d'une requête comprenant tous les
champs (j'ai ouvert un champ (AFFECTES: {numérique}) dans
la table ANIMATEURS) pour essayer d'y insérer le résultat
du calcul.
Malgré mes nombreux essais, toujours sans succès.

Les relations des deux tables par le champ (ANIMACTI) sont
de un à un (j'ai essayé les trois combinaisons)
.
J'ai essayé (AFFECTES = Compteur) et d'autres
combinaisons avec la fonction VraiFaux, toujours sans
succès.
Je dois ne pas faire quelque chose qui m'en empêche, Mais
quoi ?

J'ai aussi essayé avec la fonction "CpteDom". Mais, lors
de mes essais, j'ai toujours comme résultat " erreur"
ou "nom?".sans autre observation particulière

Merci si tu peux m'aider !
Bien entendu je peux fournir toutes les explications
complémentaires qui seraient utiles
Pierre CHO