voila le petit programme qui ne marche pas et ou le compteur ne s"affiche pas ( sur ACCESS )
but:
il s'agit de comparer 4 champs "promo1,2,3,4 " d'une table PROMO1 avec 4 champs "A,B,C,D, de la table ANALYSE " et si les 4 champs sont identiques , il faut marquer 1 (nombre) dans le champ CRIT4 de la table ANALYSE avec un compteur pour suivre le traitement
option Compare Database
Dim MonCompteur
Sub LanceTrtPromoParTable()
' PROCEDURE QUI EFFECTUE LE TRAITEMENT PROMO en FONCTION DU PARAMETRE NonTable QUI EST LE NOM DE TABLE QUI CONTIENT LES VALEURS PROMO
'garde
Dim MaBase
Dim nbChampsPromoDansTable As Integer
Set MaBase = CurrentDb()
Set MaTablePromo = MaBase.OpenRecordset("table promo4" )
If Not MaTablePromo.EOF Then
MaTablePromo.MoveFirst
End If
Do Until (MaTablePromo.EOF)
' on valorise les variables
promo1 = MaTablePromo("promo1" )
promo2 = MaTablePromo("promo2" )
promo3 = MaTablePromo("promo3" )
promo4 = MaTablePromo("promo4" )
' on lance la procedure qui parcour la table achat
MonCompteur = MonCompteur + 1
Form("Deroulement" ).Value = CStr(Date) + "(" + CStr(Time) + " )" + ": " + "Compteur = " + CStr(MonCompteur) + " ; " + vbCrLf + Form("Deroulement" ).Value
SQLUPDATE = "UPDATE ANALYSE SET CRIT4=1 WHERE ((ANALYSE.A = " + CStr(promo1) + " AND ANALYSE.B = " + CStr(promo2) + " AND ANALYSE.C = " + CStr(promo3) + " AND ANALYSE.D = " + CStr(promo4) + " ) OR (ANALYSE.B = " + CStr(promo1) + " AND ANALYSE.C = " + CStr(promo2) + " AND ANALYSE.D = " + CStr(promo3) + " AND ANALYSE.E = " + CStr(promo4) + " ))"
MaBase.Execute (SQLUPDATE)
MaTablePromo.MoveNext
Loop
End Sub
Private Sub LancePromo_Click()
Call LanceTrtPromoParTable
End Sub
merci pour toute aide
Eglantine