Bonjour,
J'ai une liste de transactions.
Une requete calcul le total que represente une transaction.
idTransaction, idClient, idMonnaie, DateTransaction, DateFormatte, Apport,Retrait,Apport-Retrait AS SoldeTransaction.
DateFormatte est un format string de date avec les secondes 20060612192515.
Je voudrais créer un troisième champs Solde.
Celui ci serait le total de tous les SoldeTransaction des transactions antérieures pour chaque client en fonction de chaque devise.
Je viens de passer la journée à chercher une fonction ou un système qui fonctionnerait pour calculer ce solde en me basant sur des fonctions que j'avais déja mais ca ne fonctionne pas.
Par exemple j'essaie avec:
impossible de le faire fonctionner, et je ne vois pas du tout ou est mon erreur. J'ai #Erreur dans la colonne.
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 Function soldecash(kcodeval As Long, kCompte As Long, kref As String) As Double Dim dbase As DAO.Database Dim kmesvaleurs As DAO.Recordset Dim ksql As String Dim kStock As Double Set dbase = CurrentDb ksql = "SELECT DateFormatte, idClient, idMonnaie, SoldeTransaction FROM 2HistoriqueSoldes " & _ "WHERE (DateFormatte <= " & kref & ") And ( idMonnaie = " & kcodeval & " ) And ( idClient = " & kCompte & " )ORDER BY DateFormatte;" Set kmesvaleurs = dbase.OpenRecordset(ksql) While Not kmesvaleurs.EOF kStock = kStock + kmesvaleurs![Solde] kmesvaleurs.MoveNext Wend soldecash = Round(kStock, 5) End Function
Auriez vous une solution autre?
J'ai cherché et je suis surpris de voir si peu de posts abordant le sujet, qui doit être pourtant souvent utilisé.
Partager