Calcul dans une BD [VB6]

Signaler
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
-
Messages postés
298
Date d'inscription
lundi 14 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2013
-
Bonjour


Peut on additionné des nombres qui se trouvent dans une BD acces.


En fait dans ma BD j’ai 16 champs, les Equipes et les Scores, je voudrais additionné le résultat de l’équipe A de l’équipe B, ….. Etc. et d'affiché le résultat des 4 équipes dans un label qui se trouve dans une FORM.
merci
@ plus
petchy

4 réponses

Messages postés
298
Date d'inscription
lundi 14 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2013
1
juste une idée, pas testé:

Dim cresul As New ADODB.Connection
Dim resultatA As New ADODB.Recordset, resultatB As New ADODB.Recordset, cresul.Provider = "Microsoft.Jet.OLEDB.4.0"
cresul.ConnectionString = "C:\resultat.mdb"


Set resultatA New ADODB.Recordset: Set resultatB New ADODB.Recordset:


cresul.Open
resultatA.Open "SELECT DISTINCT Field1 FROM resultat", cresul
resultatA.MoveFirst
resultatA.Open "SELECT DISTINCT Field2 FROM resultat", cresul
resultatA.MoveFirst

If resultatA.RecordCount <> 0 Then
Do While Not resultatA.EOF
monresultat= resultatA(0) + resultatB(0)
textbox.text= textbox.text & monresultat
resultatA.MoveNext
Loop
End If
Set resultatA = Nothing
Messages postés
710
Date d'inscription
jeudi 20 février 2003
Statut
Membre
Dernière intervention
19 mai 2015
3
bonjour
merci Lacomm pour ton code mais ça ne fonctionne pas,car je n'ait de champ nomé "resultat",j'ai essayé de créer se champ en mettant comme valeur "[score1] + [score2]"mais il refuse,auriez vous une autre idée.
petchy
Messages postés
298
Date d'inscription
lundi 14 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2013
1
sorry tu dois supprimer DISTINCT du code, qui classe les cellulles par ordre croissant.
ca marche j'ai testé.

'vérifier la référence à ADO dans project
Dim cresul As New ADODB.Connection
Dim resultatA As New ADODB.Recordset, resultatB As New ADODB.Recordset
cresul.Provider = "Microsoft.Jet.OLEDB.4.0"
cresul.ConnectionString = "C:\resultat.mdb"


Set resultatA = New ADODB.Recordset
Set resultatB = New ADODB.Recordset:


cresul.Open
'resultatA= recordset, copie du champ 1 de ta table resultat
resultatA.Open "SELECT Field1 FROM resultat", cresul
resultatA.MoveFirst
resultatA.Open "SELECT Field2 FROM resultat", cresul
resultatA.MoveFirst

If resultatA.RecordCount <> 0 Then
Do While Not resultatA.EOF
monresultat= resultatA(0) + resultatB(0)
textbox.text= textbox.text & monresultat
resultatA.MoveNext
Loop
End If
Set resultatA = Nothing
Messages postés
298
Date d'inscription
lundi 14 juin 2004
Statut
Membre
Dernière intervention
5 juillet 2013
1
attention
resultat c'est pas les champsde ta base, c'est la table
resultatA = c'est un recordset, pas une base réelle


les champs c'est bien Field1 et Field2 ou champ1 et champ2, bref, ce que tu as par défaut; il ne faut pas changer

(recordset ou copie de la colonne de la table) resultatA.Open "SELECT Field1(champ par défaut) FROM resultat (table)", cresul
resultatA.MoveFirst