[]
Nombre de membres 1 membre
Connectés : ( personne )
 

La Charte du Forum - La Charte du Forum

Forum - Forum
Problèmes liés aux codes du site - Problèmes liés aux codes du site


clos par 3Stone le 10/10/2011 : 23:38  Sujet n° 476  Ajouter une valeur à une zone de liste modifiable

le 21/02/2011 : 17:34
par Cath

Anonyme

visiteur

Bonjour, J'ai consulté votre code concernant l'ajout dans une liste et il fonctionne quand on ajoute une valeur dans une table. Dans ma base j'aimerai ajouter 1 valeur et 1 camp associé, éventuellement en passant par un formulaire de saisie, mais je ne vois pas comment faire (tous mes essais ont échoué).Description
J'ai un formulaire de saisie (F_saisie) contenant un champ code article (NumArticle), lié à une table code article (T_codeArticle avec 1 champ NumArticle et 1 champ Reference associé).
Quand l'article n'existe pas, il me faudrait un message : "voulez-vous ajouter ce code article ?". Ensuite, un formulaire de saisie Article avec le code article manquant et la référence associée.
Après que l'enregistrement de l'article est fait, il faudrait revenir au formulaire de saisie F_saisie, dans l'enregistrement en cours qui accepterait le nouveau code article. J'espère que les explications sont claires et que vous pourrez me renseigner ! J'ai consulté plusieurs sites et pas de solution pour l'instant...Merci!
 sujet clos  Haut
Réponse n° 1
--------
le 21/02/2011 : 18:40
par 3Stone

Anonyme

Administrateur

Bonjour,

Lorsque l'on utilise ce code, on à deux solutions pour saisir plusieurs valeurs.

La plus simple est de demander la seconde valeur par une simple inputbox()
Evidemment, on ajoute cette valeur également à la table...
Code :
    If MsgBox("Voulez-vous ajouter la valeur " & NewData & " ?", _
vbYesNo + vbQuestion) = vbYes Then
Dim sChamp2 As String
sChamp2 = InputBox("Valeur 2 ?")
CurrentDb.Execute "INSERT INTO LaTable(LeChamp, LeChamp2) " _
& "SELECT """ & NewData & "," & sChamp2 & """ ;"
 Le reste ne change pas...

Plus élégamment et plus sécurisé est effectivement d'utiliser un petit formulaire pour la saisie des valeurs.
- à la place de l'inputbox, on ouvre ce formulaire en modal
- on controle la saisie effectuée
- si ok, on sauve dans la table (CurrentDb.Execute "INSERT INTO...") et on ferme le formulaire
- on rafraichi la liste

Cordialement,
Pierre(3stone)
  clos par 3Stone le 10/10/2011 : 23:38  Haut
Réponse n° 2
--------
le 21/02/2011 : 20:25
par Cath

Anonyme

visiteur

Merci pour votre rapidité ! Je vais tester ça demain. La première méthode est effectivement simple, mais je vais essayer la solution la plus élégante.

En tout cas, j'adore votre site et le forum c'est un grand plus. J'ai encore d'autres interrogations dans Access, alors je me permettrais sans doute de vous recontacter !

Ecrire à Cath   clos par 3Stone le 10/10/2011 : 23:38  Haut
actif sujet actif   clos sujet clos   Important! Important!   Nouveau Nouveau message   -   Rectifier Rectifier message   Clôturer Clôturer sujet   Remonter Remonter
[]
Catégories de discussion  Forum 



Haut