VBA: problème lors du parcours d'une table

Résolu/Fermé
nchristedem Messages postés 23 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 12 décembre 2009 - 2 juin 2009 à 15:42
nchristedem Messages postés 23 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 12 décembre 2009 - 3 juin 2009 à 10:38
Bonjour,

J'ai écris un code qui parcours une table et fait la moyenne de deux valeurs successives tant qu'on n'a pas atteint la dernière valeur. J'ai 1000 enregistrements. Le calcul est fait pour les 999 premiers (ce qui me convient). Seulement, un message d'erreur s'affiche et bloque tout (en réalité le code fait partie d'un grand ensemble). Quelqu'un a une meilleure idée sur comment faire les moyennes en parcourant la table?

rst.MoveFirst

While Not rst.EOF

Qb1 = rst.Fields("Demande")

rst.MoveNext

Qb2 = rst.Fields("Demande")

Qb = 0.5 * (Qb1 + Qb2)

fichier.WriteLine (Format(Qb1, "0.00") & "; " & Format(Qb2, "0.00") & "; " & Format(Qb, "0.00"))

Wend

1 réponse

nchristedem Messages postés 23 Date d'inscription mercredi 29 avril 2009 Statut Membre Dernière intervention 12 décembre 2009 4
3 juin 2009 à 10:38
Merci.

J'ai eu cette réponse qui marche bien!

While Not rst.EOF

Qb1 = rst.Fields("Demande")

rst.MoveNext
if not rst.eof then

Qb2 = rst.Fields("Demande")

else
Qb2=0

end if
Qb = 0.5 * (Qb1 + Qb2)

fichier.WriteLine (Format(Qb1, "0.00") & "; " & Format(Qb2, "0.00") & "; " & Format(Qb, "0.00"))

wend
0