Formulaire pour corriger, ajouter et supprimer des données

Le
moromain
Bonjour,

J'ai créé une série d'onglet dans un formulaire.
Dans un onglet, j'ai une liste déroulante (list1).
A partir d'une zone texte, je veux avoir la possibilité de renommer ou
d'ajouter une valeur dans le champs de list1.
Je tape mon texte dans la zone dédiée, et je clique sur un bouton,
soit "Corriger", soit "Ajouter".
Dans un cas comme dans l'autre, ça ne marche pas ! J'ai suivi les
conseils de posts précédents, mais rien n'y fait.

Dans le cas d'une correction, le code est :
NomCorrige = Me.ZoneTexte.Value
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70

=> Ici, je n'arrive pas à dire à ACCESS que c'est telle ou telle
valeur de list1 (préalablement sélectionnée) qu'il faut modifier. Le
problème vient peut-être de là.

Dans le cas d'un ajout le code est :
New = Me.ZoneText.Value
DoCmd.GoToRecord , New, acNewRec

=> Plus simple (a priori) que précédemment, j'ai une erreur : Erreur
2489 : l'objet [texte entré dans la zone texte] n'est pas ouvert. Je
n'utilise pas de sous-formulaire. L'utilisation d'onglets
compliquerait-elle les opérations ?

Je cherches à faire la même opération avec Supprimer, et là, ce n'e=
st
jamais la ligne sélectionnée qui est supprimée. Je précise que je
commence toujours à partir des boutons créés avec ACCESS, que je
modifie après.

Des idées ?
Merci
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Thierry (ze Titi)
Le #6385751
Hello moromain !

Dans le cas d'une correction, le code est :
NomCorrige = Me.ZoneTexte.Value
DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, ,
acMenuVer70


Je verrais plutôt une commande SQL du style:

DoCmd.RunSQL "UPDATE laTable SET leChamp='" & NomCorrige & "' WHERE leChamp='" & List1 & "'"
list1.Requery

Dans le cas d'un ajout le code est :
New = Me.ZoneText.Value
DoCmd.GoToRecord , New, acNewRec


Même principe que précédemment sauf qu'à la place d'un UPDATE, on fait un INSERT

DoCmd.RunSQL "INSERT INTO laTable(leChamp) VALUES('" & Me.ZoneText.Value & "')"
List1.Requery

A tester

--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

moromain
Le #6385741
Super ça marche.

Et pour supprimer une valeur, ça doit être un truc comme ça :
DoCmd.RunSQL "DELETE FROM table WHERE champs = '" & Me.ZoneText.Value
& "'"
(Doit y avoir une erreur de synthaxe)
Thierry (ze Titi)
Le #6385731
Super ça marche.
Rassurant... ;-)


Et pour supprimer une valeur, ça doit être un truc comme ça :
DoCmd.RunSQL "DELETE FROM table WHERE champs = '" & Me.ZoneText.Value
& "'"
(Doit y avoir une erreur de synthaxe)
DoCmd.RunSQL "DELETE * FROM table WHERE champs = '" & Me.ZoneText.Value & "'"


peut-être ?

Message du jeudi 25/10/2007

Super ça marche.

Et pour supprimer une valeur, ça doit être un truc comme ça :
DoCmd.RunSQL "DELETE FROM table WHERE champs = '" & Me.ZoneText.Value
& "'"
(Doit y avoir une erreur de synthaxe)


--
Cordialement,
Thierry

Tout pour réussir avec Access :
http://www.mpfa.info

moromain
Le #6385541
La synthaxe pour supprimer est :
DoCmd.RunSQL "DELETE FROM table WHERE champs = """ & Me.ZoneText.Value
& """

Ce n'était qu'une histoire de ' et de " !
Publicité
Poster une réponse
Anonyme