Bonjour,

J'essaie de modifier un champ de mon recordset avec des données extraites d'un fichier texte. Mais j'ai à chaque fois le message d'erreur suivant :

"Current recordset does not support updating"

Je dois surement modifier la propriétés locktype mais je ne vois pas bien où ni comment? Merci de votre aide !

Voici mon code avec en rouge ouù ça déconne:
Private Sub Commande5_Click()
Dim valeurlue As String
Dim intfichier As Integer
Dim cnc As ADODB.Connection
Dim valeur As Variant
Dim valtab(11) As Variant
Dim import As String
Dim import2 As String
Set cnc = CurrentProject.Connection
Dim fichier As Variant
Dim rst As New ADODB.Recordset
Dim cmd As New ADODB.Command
rst.LockType = adLockOptimistic
'lancer la fonction equivalente à filedialog
fichier = OuvrirUnTXT(Me.Hwnd, "Parcourir", 1, "Fichier Texte", "txt")

If fichier <> "" Then


intfichier = FreeFile
Open fichier For Input As #intfichier

Do While Not EOF(intfichier)


Line Input #intfichier, valeurlue
i = 0
For Each valeur In Split(valeurlue, Chr(9))
valtab(i) = valeur
i = i + 1
Next
check = "SELECT [MAGASIN].NUMERO FROM [MAGASIN] " & _
"WHERE ([MAGASIN].NUMERO='" & valtab(0) & "')"
cnc.Execute check
'initialiser l'objet de commande SQL
Set cmd.ActiveConnection = cnc
cmd.CommandType = adCmdText
cmd.CommandText = check

'Ouverture du recordset
rst.LockType = adLockOptimistic
Set rst = cmd.Execute

' rst.Open check, cnc
If rst.EOF Then 'Si le magasin n'existe pas encore en base
'initialiser l'objet de commande SQL pour importer
Set cmd.ActiveConnection = cnc
cmd.CommandType = adCmdText
cmd.CommandText = import2
import = "INSERT INTO [MAGASIN] (NUMERO,NOM,Ouvert,LANGUE,RESPONSABLE,ADRESSE,[CODE POSTAL],VILLE,TELEPHONE,STATUT) VALUES ('"
import2 = import & valtab(0) & "','" & valtab(1) & "'," & valtab(2) & ",'" & valtab(3) & "','" & valtab(4) & " " & valtab(5) & " " & valtab(6) & "','" & Replace(valtab(7), "'", " ") & "','" & valtab(8) & "','" & valtab(9) & "','" & valtab(10) & "','" & valtab(11) & "')"
'lancer la requête SQL d'import
Texte6.Value = import2
cnc.Execute import2
Else
check2 = "SELECT [MAGASIN].* FROM MAGASIN " & _
"WHERE ([MAGASIN].NUMERO='" & valtab(0) & "')"
cnc.Execute check2
Set cmd.ActiveConnection = cnc
cmd.CommandType = adCmdText
cmd.CommandText = check2
Set rst = cmd.Execute
If rst("NOM").Value <> valtab(1) Then
rst.Fields("NOM").Value = valtab(1)
rst.Update
End If


End If
rst.Close

Loop
Else
MsgBox ("pas de fichier choisis")
End If

End Sub