Erreur vb

[Résolu]
Signaler
Messages postés
18
Date d'inscription
jeudi 29 novembre 2007
Statut
Membre
Dernière intervention
16 janvier 2008
-
Messages postés
84
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
25 juillet 2008
-
j'ai un probléme avec mon bout de mon code en vb.
une erreur arrive:"erreur  d'execution 3020   Update ou CancelUpdate effectué sans appeler Addnew ni Edit"
Pouvez vous m'aidez.   merçi d'avance

Function cdane(aec)
Dim dbs As DAO.Database, atable As Recordset, rés As Recordset
Dim j, k, m As Integer
Dim cum, cda As Long
Static tota(99)
Set dbs = CurrentDb
Set atable = dbs.OpenRecordset("liste des cols", dbOpenSnapshot)
Set rés = dbs.OpenRecordset("cdparan", dbOpenTable, dbDenyRead Or dbDenyWrite)
rés.Index = "PrimaryKey"

    For j = 0 To 99
        tota(j) = 0
    Next
    Do Until atable.EOF
        cda = cdan(atable![Cols Durs années précéd], atable![altit], atable![année], atable![cd], aec)
        atable.MoveNext
        For j = 0 To 99
            tota(j) = tota(j) + totcd(j)
        Next
    Loop
    cum = 0
    For j = 0 To 99
       With rés
       .Edit
       .Seek "=", j
       ![Mpan] = tota(j)
       ![An 2000] = (j + 40) Mod 100 + 1960
       .Update
' Debug.Print j, tota(j)
        cum = cum + tota(j)
        cdane = cum
       End With
       
    Next
    rés.Edit
    rés.Seek "=", 100
    rés![Mpan] = cum
    rés.Update
    rés.Close
End Function

3 réponses

Messages postés
4822
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
14
Salut,

Addnew >> Dit à la base que cela va être  un nouvel enregistrement...Tu vois un peu le truc ?

Par contre il y a une chose que j'ai appris il n'y a pas encore bien longtemps, c'est de ne pas mettre d'accens sur tes variables ainsi que sur le nom de tes tables/champs...Tu verras tu t'en porteras que mieux !

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
Messages postés
84
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
25 juillet 2008
1
sur quelle ligne l'erreur ?
Messages postés
84
Date d'inscription
lundi 6 novembre 2000
Statut
Membre
Dernière intervention
25 juillet 2008
1
bien d'accord pour les accents, surtout si tu fais la betise supplémentaire de pas mettre
option explicit en haut de chacun de tes modules ...
accents oublié, panade assurée !