Forum - Questions générale - Sujet n°556

[]
Nombre de membres 1 membre
Connectés : ( personne )
 

La Charte du Forum - La Charte du Forum

Forum - Forum
Questions générale - Questions générale


clos par 3Stone le 17/10/2011 : 17:29  Sujet n° 556  Requete de somme partielle

le 13/10/2011 : 08:48
par Jeancharles

Anonyme

visiteur

Bonjour,

Je voudrais faire une requete de mise à jour qui me permette de
calculer un solde en fonction des enregistrements.

Donc j'ai ma table qui contient les champs

montant
solde

et je voudrais faire une requete qui me sorte le resultat suivant et
mette la table à jour

Montant Solde
 3             3 
 2             5 
 -4            1 
 5              6 

Etc

J'ai essayé avec du dlookup du stylesolde: RechDom("[montant]";"[tbloperations]";[ref]-1)+[montant]Mais ca ne calcule pas bien la partie [ref]-1, ensuite je suis passé par une requete intermédiaire qui me crée la bonne valeur de ref-1 que j'ai appelé [idvalid] et je repars sur un dlookupmont2: RechDom("[mont]";"[rqgraphid]";"[idvalid]")mais ca ne marche pas mieux alors que je vois le idvalid affiché correctement dans la ref.J'ai tenté de mette un nz() devant le idvalid mais rien de mieux je suis bloqué...Merci de votre aide
Ecrire à Jeancharles  sujet clos  Haut

[]   

DébutPrécédent [ 1 2 ] SuivantFin
Réponse n° 1
--------
le 13/10/2011 : 14:23
par 3Stone

Anonyme

Administrateur

Bonjour,

Ce qui manque dans cette tentative, c'est une colonne sur laquelle on puisse trier. Cette valeur doit évidemment respecter l'ordre dans lequel tu cherches à additionner les valeurs.
Cela peut être un simple numéroauto, une date...

As tu un tel champ dans ta table ?

Cordialement,
Pierre(3stone)
  clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 2
--------
le 13/10/2011 : 14:55
par jeancharles

Anonyme

visiteur

Bien sur :)

J'ai un champ "ref" dans la table et dans la requete de calcul j'ai meme crée un champ [idvalid] "ref-1" pour avoir la "bonne" ref sur laquelle indexer, mais toujours pas....

Voila le code de la requete de traitement  elle s'appele rqgraphid 

SELECT [ref]-1 AS idvalid, tbloperations.montant AS mont, tbloperations.ref AS ref2
FROM tbloperations;

et voila le code de la requete de traitement qui ne fonctionne pas

SELECT rqgraphid.ref2, rqgraphid.idvalid, rqgraphid.mont, DLookUp("[mont]","[rqgraphid]","[idvalid]") AS mont2
FROM rqgraphid;


Merci de l'aide

Ecrire à jeancharles   clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 3
--------
le 13/10/2011 : 16:48
par 3Stone

Anonyme

Administrateur

Bonjour,
 
Citation :

Bien sur

 
Il faut donc l'utiliser... dans une requête :
 
Code :
Solde: DSum("Montant";"tblOperations";"[Ref] < " & [Ref] )
 pour une Ref de type numérique.
 
Cordialement,
Pierre(3stone)
  clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 4
--------
le 14/10/2011 : 08:06
par jeancharles

Anonyme

visiteur

C'est énervant que tu aies toujours raison :)

Merci

Ecrire à jeancharles   clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 5
--------
le 14/10/2011 : 14:45
par jeancharles

Anonyme

visiteur

Je me suis trompé dans ma structure !!!

Il ne faut pas que je calcule mon index par ref mais juste par "enregistrement précédent" parce que si je rentre un nouvel enregistrement avec une date antérieure ca me plante les calculs..

Donc je cherche la formule magique pour qu'il aille chercher "enregistrement précédent" et pas "ref précedente" comme ca je trie mes enregistrements par date et je suis sur d'etre toujours bon.

Merci et désolé de la betise :)

Ecrire à jeancharles   clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 6
--------
le 14/10/2011 : 17:59
par 3Stone

Anonyme

Administrateur

Bonjour,

On en revient donc à la case départ...
 
Citation : 3stone

Il faut un champ sur lequel on puisse trier

 
Car une expression comme "enregistrement précédent" ne désigne rien dans une table ou requête, sauf si on défini un ordre.

Cordialement,
Pierre(3stone)
Ecrire à 3Stone   clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 7
--------
le 14/10/2011 : 18:36
par jeancharles

Anonyme

visiteur

Si je les trie par date d'echéance mais en sachant que je peux avoir plusieurs enregistrements à la meme échéanche comment s'organise le 2° critère de tri ?

C'est à moi de le définir ?

Merci

Ecrire à jeancharles   clos par 3Stone le 17/10/2011 : 17:29  Haut
Réponse n° 8
--------
le 15/10/2011 : 00:47
par 3Stone

Anonyme

Administrateur

Bonjour,

Si nécessaire, une date peut également contenir l'heure et les minutes, ce qui réduit la possibilité de doublons...

C'est comme toujours l'analyse préalable qui défini les champs et informations nécessaires. On ne peut extraire que les informations qui existent; ainsi, si une date/heure ne suffit pas, il faut y ajouter un numéro d'ordre.

Si cela n'a pas été prévu, on peut essayer de verser les enregistrements dans une table temporaire qui comporte un numéroauto pour avoir alors un champ sur lequel trier.

Cordialement,
Pierre(3stone)
  clos par 3Stone le 17/10/2011 : 17:29  Haut
DébutPrécédent [ 1 2 ] SuivantFin
actif sujet actif   clos sujet clos   Important! Important!   Nouveau Nouveau message   -   Rectifier Rectifier message   Clôturer Clôturer sujet   Remonter Remonter
[]
Catégories de discussion  Forum 



Haut