Je suis novice dans l'utilisation d'access et de visual basic.
Voilà mon problème :
dans un base de donnée de location de camping cars il y a deux tables
dont les noms sont 'Propriétaire' et 'Véhicule'
Je voudrait faire un formulaire pour chaque table me permettant de
modifier ou supprimer leurs différents enregistrements.
Je sélectionne les enregistrements à modifier/supprimer à l'aide de
liste déroulantes. Après mise à jour de cette liste, je voudrait voir
apparaitre toutes les infos de l'enregistrement en question dans le
formulaire à l'aide de zones de texte.
Voici le code vb dans l'évènement "After Update" des zone de liste :
Propriétaire :
--------------
Private Sub RecherchePropriétaire_LD_AfterUpdate()
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[PR_ID] =" & Me![RecherchePropriétaire_LD]
Me.Bookmark = rs.Bookmark
End Sub
Véhicule :
----------
Private Sub RechercheVéhicule_LD_AfterUpdate()
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Comme vous pouvez le voir, le code est identique pour chacune des
tables.
Le problème, c'est que dans un cas (Propriétaire) ça fonctionne très
bien et dans l'autre (Véhicule) ça ne marche pas du tout et j'ai ce
message d'erreur à l'exécution :
"erreur d'exécution 3021 : aucun enregistrement en cours."
Pourquoi le même code fonctionne-t'il dans un cas et pas dans l'autre
?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Raymond [mvp]
Bonjour.
ces 2 procédures ayant été générées automatiquement par l'assistant, il n'y a pas d'erreurs dans les fonctions, sauf si tu as modifié quelque chose dans la procédure ou le type de données dans la tables. s'il ne trouve pas d'enregistrement courant, c'est qu'il ne trouve pas d'égalité. essaie par une requête si tu trouves une égalité. Si oui, vérifie si tout est bien numérique car tu recherches une clé numérique. si non ta bles n'a pas les bonnes correspondances de clés.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jonathan Guyot" a écrit dans le message de news:
Bonjour,
Je suis novice dans l'utilisation d'access et de visual basic.
Voilà mon problème :
dans un base de donnée de location de camping cars il y a deux tables dont les noms sont 'Propriétaire' et 'Véhicule'
Je voudrait faire un formulaire pour chaque table me permettant de modifier ou supprimer leurs différents enregistrements.
Je sélectionne les enregistrements à modifier/supprimer à l'aide de liste déroulantes. Après mise à jour de cette liste, je voudrait voir apparaitre toutes les infos de l'enregistrement en question dans le formulaire à l'aide de zones de texte.
Voici le code vb dans l'évènement "After Update" des zone de liste :
Propriétaire : --------------
Private Sub RecherchePropriétaire_LD_AfterUpdate() ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object
Set rs = Me.Recordset.Clone rs.FindFirst "[PR_ID] =" & Me![RecherchePropriétaire_LD] Me.Bookmark = rs.Bookmark End Sub
Véhicule : ----------
Private Sub RechercheVéhicule_LD_AfterUpdate() ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object
Comme vous pouvez le voir, le code est identique pour chacune des tables.
Le problème, c'est que dans un cas (Propriétaire) ça fonctionne très bien et dans l'autre (Véhicule) ça ne marche pas du tout et j'ai ce message d'erreur à l'exécution :
"erreur d'exécution 3021 : aucun enregistrement en cours."
Pourquoi le même code fonctionne-t'il dans un cas et pas dans l'autre ?
Si quelqu'un peut me donner un coup de main...
Bonjour.
ces 2 procédures ayant été générées automatiquement par l'assistant, il n'y
a pas d'erreurs dans les fonctions, sauf si tu as modifié quelque chose dans
la procédure ou le type de données dans la tables. s'il ne trouve pas
d'enregistrement courant, c'est qu'il ne trouve pas d'égalité. essaie par
une requête si tu trouves une égalité. Si oui, vérifie si tout est bien
numérique car tu recherches une clé numérique. si non ta bles n'a pas les
bonnes correspondances de clés.
--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jonathan Guyot" <joguy4@caramail.com> a écrit dans le message de
news:44a2e6c9.0403050504.565e0d16@posting.google.com...
Bonjour,
Je suis novice dans l'utilisation d'access et de visual basic.
Voilà mon problème :
dans un base de donnée de location de camping cars il y a deux tables
dont les noms sont 'Propriétaire' et 'Véhicule'
Je voudrait faire un formulaire pour chaque table me permettant de
modifier ou supprimer leurs différents enregistrements.
Je sélectionne les enregistrements à modifier/supprimer à l'aide de
liste déroulantes. Après mise à jour de cette liste, je voudrait voir
apparaitre toutes les infos de l'enregistrement en question dans le
formulaire à l'aide de zones de texte.
Voici le code vb dans l'évènement "After Update" des zone de liste :
Propriétaire :
--------------
Private Sub RecherchePropriétaire_LD_AfterUpdate()
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[PR_ID] =" & Me![RecherchePropriétaire_LD]
Me.Bookmark = rs.Bookmark
End Sub
Véhicule :
----------
Private Sub RechercheVéhicule_LD_AfterUpdate()
' Rechercher l'enregistrement correspondant au contrôle.
Dim rs As Object
Comme vous pouvez le voir, le code est identique pour chacune des
tables.
Le problème, c'est que dans un cas (Propriétaire) ça fonctionne très
bien et dans l'autre (Véhicule) ça ne marche pas du tout et j'ai ce
message d'erreur à l'exécution :
"erreur d'exécution 3021 : aucun enregistrement en cours."
Pourquoi le même code fonctionne-t'il dans un cas et pas dans l'autre
?
ces 2 procédures ayant été générées automatiquement par l'assistant, il n'y a pas d'erreurs dans les fonctions, sauf si tu as modifié quelque chose dans la procédure ou le type de données dans la tables. s'il ne trouve pas d'enregistrement courant, c'est qu'il ne trouve pas d'égalité. essaie par une requête si tu trouves une égalité. Si oui, vérifie si tout est bien numérique car tu recherches une clé numérique. si non ta bles n'a pas les bonnes correspondances de clés.
-- @+ Raymond Access MVP http://access.seneque.free.fr/ http://access2003.free.fr/ http://users.skynet.be/mpfa/ pour débuter sur le forum
"Jonathan Guyot" a écrit dans le message de news:
Bonjour,
Je suis novice dans l'utilisation d'access et de visual basic.
Voilà mon problème :
dans un base de donnée de location de camping cars il y a deux tables dont les noms sont 'Propriétaire' et 'Véhicule'
Je voudrait faire un formulaire pour chaque table me permettant de modifier ou supprimer leurs différents enregistrements.
Je sélectionne les enregistrements à modifier/supprimer à l'aide de liste déroulantes. Après mise à jour de cette liste, je voudrait voir apparaitre toutes les infos de l'enregistrement en question dans le formulaire à l'aide de zones de texte.
Voici le code vb dans l'évènement "After Update" des zone de liste :
Propriétaire : --------------
Private Sub RecherchePropriétaire_LD_AfterUpdate() ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object
Set rs = Me.Recordset.Clone rs.FindFirst "[PR_ID] =" & Me![RecherchePropriétaire_LD] Me.Bookmark = rs.Bookmark End Sub
Véhicule : ----------
Private Sub RechercheVéhicule_LD_AfterUpdate() ' Rechercher l'enregistrement correspondant au contrôle. Dim rs As Object
Comme vous pouvez le voir, le code est identique pour chacune des tables.
Le problème, c'est que dans un cas (Propriétaire) ça fonctionne très bien et dans l'autre (Véhicule) ça ne marche pas du tout et j'ai ce message d'erreur à l'exécution :
"erreur d'exécution 3021 : aucun enregistrement en cours."
Pourquoi le même code fonctionne-t'il dans un cas et pas dans l'autre ?