Bonjour à tous,
J'ai un problème pour mettre à jour une de mes tables Access, j'ai créé une boucle qui met à jour mes lignes automatiquement. La première ligne de ma table est mise à jour correctement, seulement les suivantes ne le sont pas et Access me prétexte à chaque fois l'erreur :

"Microsoft Office Access n'a pas mis à jour 0 champ(s) à cause d'un échec de conversion de type, 1 enregistrement(s) à la suite de violation de clé, 0 enregistrement(s) à la suite de violation de verrou et 0 enregistrements à la suite de violation de la règle de validation."

Je ne comprends pas car mon update marche lors du premier passage dans la boucle, alors que ça devrai être la même chose pour tout les passages..

Quelqu'un peut-il m'aider svp ?? Merci d'avance.

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
18
19
20
For i = 2 To NbLine
    With xlApp.ActiveWorkbook.Worksheets("Bdd")  'recuperation des données de la feuille2
 
        sql = "SELECT * FROM site"
        Set Req = db.OpenRecordset(sql)
        Req.AddNew
 
        n_liaison = .Range("E" & i).Value
        n_siteA = .Range("V" & i).Value
        n_siteB = .Range("Y" & i).Value
 
        If DCount("n_liaison", "liaison", "n_liaison='" & xlApp.ActiveWorkbook.Worksheets("Bdd").Range("E" & i).Value & "'") = 1 Then
            MsgBox ("boucle 1")
 
            'Mise à jour table liaison
            cSQL = "UPDATE liaison SET n_siteA='maj' WHERE n_liaison='" & n_liaison & "'" 'requete SQL
            DoCmd.RunSQL cSQL
 
        Else
           ....
(je précise que c'est un code qui récupère des données d'un fichier Excel vers une table Access)