Suppression d'un enregistrement ACCESS à partir d'un feuile VB

Résolu
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008 - 19 avril 2007 à 23:19
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 - 23 avril 2007 à 02:10
Bonsoir,

je voulais prendre votre avis sur ce code qui marche pas pour la suppression d'un enregistrement d'une table dans une feuille VB6, voici le code:

Private Sub Suppression_Click()
' Chemin complet et nom de la base
strDB = "C:\pesageo.mdb"
' Nom de la table
strTable = "Véhicule"
 
' Ouverture connexion vers la base
Set oConn = New ADODB.Connection
oConn.Provider = "Microsoft.Jet.OLEDB.4.0"
oConn.Open strDB
 
' Optionnel : Vide la table
'oConn.Execute "DELETE FROM " & strTable
 
' Ouverture recordset sur la table
Set oRS = New ADODB.Recordset
oRS.CursorLocation = adUseClient
oRS.Open strTable, oConn, adOpenDynamic, adLockOptimistic, adCmdTable

oRS.Delete
Adodc1.Refresh
On Error Resume Next 'éviter l' erreur
oRS.MoveNext 'pour se palcer au suivant
If oRS.EOF Then oRS.MovePrevious
End Sub

mais celà engendre l'erreur suivante:

Erreur d'execution '-2147467259 (80004005)':
Impossible de supprimer dans les tables spécifiées.

Merci de m'aider

48 réponses

basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
22 avril 2007 à 22:05
bonsoir,

voici ce que j'ai mis:
Private Sub Command1_Click()
Dim enr1, enr2 As String
' Chemin complet et nom de la base
strDB = "C:\pesageo.mdb"
' Nom de la table
strTable = "Véhicule"
 
Set oConn = New ADODB.Connection
oConn.Provider = "Microsoft.Jet.OLEDB.4.0"
oConn.Open strDB

On Error GoTo Err_Update
     enr1 = Text1(0).Text ' Extraction de la ligne en cours
     enr2 = Text1(1).Text

Dim sQuery As StringsQuery "Update Véhicule Set N°véhicule '" & enr1 & "', Libellé='" & enr2 & "' Where N°véhicule = '" & Text1(0).Text & "'"

oConn.Execute sQuery

Adodc1.Refresh

Exit Sub
Err_Update:
MsgBox err.Description
End Sub

mais ce code me laisse mes deux champs tels qu'ils étaient "aucune modif"

pour te répondre, j'ai un numéro de véhicule et un libellé, je dois permettre à l'utilisateur la modification du numéro et le libellé.
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
22 avril 2007 à 22:15
réflechis un peu ...!
Au départ tu as enr1Text1(0).Text
Tu cherches un N°vehicule=Text1(0).Text
et tu lui demandes de remplacer N°vehicule par Text1(0).Text
parce que c' est ça ce que veut dire :
...Set N°vehicule = '" & enr1

je pense que c' est pareil pour le libellé.
ton véhicule a déjà le même  (enr2)
0
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
22 avril 2007 à 22:31
oui je sais j'ai meme compiler step by step et ça l'air de fonctionner mais en réalité je n'arrive pas à modifier mon enregistrement!!!
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
22 avril 2007 à 23:31
et pourtant c' est pas si compliqué !
Ajoutes un TextBox2, dans lequel tu tapes une nouveau N°
Tu cherches celui de Text1(0) et tu le remplaces par TextBox2.Text

     enr1 = Text1(0).Text ' Extraction de la ligne en cours
     enr2 = Text1(1).Text
sQuery "Update Véhicule Set N°véhicule '" & TextBox2.Text  & _
"', Libellé='" & enr2 & "' Where N°véhicule = '" & enr1 & "'"

    
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
23 avril 2007 à 01:32
mais celà va alourdir ma page et je vais compliquer la tache à l'agent de saisie  !!!
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
23 avril 2007 à 01:45
mais il faut bien que l' utilisateur saisi quelque chose pour
remplacer quelque chose par autre chose ...non ?
En tout cas , je crois qu' on est arrivé au bout...
On a fait l' essentiel et c' est à toi de voir la suite...


Bonne continuation et à la prochaine
0
basamir Messages postés 335 Date d'inscription vendredi 21 octobre 2005 Statut Membre Dernière intervention 8 mars 2008
23 avril 2007 à 01:56
Merci

je croyyais que le fait de modifier au niveau de text1(0).text pourra faire l'affaire mais bon.

je te remercie lblida

:)
0
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
23 avril 2007 à 02:10
c' est vrai si ton TextBox était lié...
mais ton cas, c' est pas le cas...
Mais tu peux toujours récupérer la valeur à partir de ton tableau
 et le remplacer par le texte du TextBox.


Allez  !  bon courage.
0
Rejoignez-nous