Requête d'ajout via un formulaire

Fermé
Aldagon72 Messages postés 10 Date d'inscription jeudi 2 février 2012 Statut Membre Dernière intervention 13 mai 2013 - 6 mai 2013 à 09:00
Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015 - 13 mai 2013 à 09:49
Bonjour,

Je travaille actuellement sur un projet nécessitant l'utilisation d'Access. Dedans, je dois, via un formulaire, faire des ajouts dans une table. Explications :
Dans mon formulaire, j'ai 7 champs au total, 6 champs Texte et 1 champ Case à cocher. Je dois récupérer leurs valeurs afin de les insérer dans une table. Le souci, c'est que je vois pas trop comment faire. Pouvez-vous m'aidez ?

Champs du formulaire : TexteMaquette, TexteZone, CocherControle, TexteRelType, TexteSI, TexteType, TexteDescription

Nom de la table : SP_REP_ZONE_MAQ

Nom des colonnes de la table : Maquette, ZONE, CONTROLE, REL_TYPE, Dexcription, SI, Type


9 réponses

Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015
6 mai 2013 à 10:15
Tu peux soit faire un docmd.runsql("Insert INTO SP_REP_ZONE_MAQ" &") et tu ajoutes à la requête les noms des champs de ton formulaire, soit utiliser un recordset
0
Aldagon72 Messages postés 10 Date d'inscription jeudi 2 février 2012 Statut Membre Dernière intervention 13 mai 2013
6 mai 2013 à 10:24
Est-ce qu'il faut que je précise les colonnes de la table dans lesquelles je veux mettre les valeurs des champs du formulaire ou pas ? Car j'ai oublié de dire que ce n'était pas les seules colonnes dsl.
0
Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015
6 mai 2013 à 10:39
Si il y a d'autres colonnes oui tu es obligé, mets les dans le même sens que tu vas mettre tes champs venus du formulaire et tout devrait bien se passer. Si tu n'indiques pas les colonnes, Access mettra par défaut à partir de la première.
0
Aldagon72 Messages postés 10 Date d'inscription jeudi 2 février 2012 Statut Membre Dernière intervention 13 mai 2013
6 mai 2013 à 11:11
Donc si j'ai bien compris, je dois faire comme ça :
SQL = "INSERT INTO SP_REP_ZONE_MAQ (Maquette, ZONE, CONTROLE, REL_TYPE, Description, SI, Type)" & "TexteMaquette" & "TexteZone" & "CocherControle" & "TexteDescription" "TexteRelType" & "TexteSI" & "TexteType"

Je fais un DoCmd.RunSQL SQL après
0

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

Posez votre question
Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015
6 mai 2013 à 11:23
Presque !
ça serait plus (....) values (" & forms!....!textemaquette & "," & forms!textezone & "," ....
Forms!!...!textemaquette étant le chemin vers le champ dans ton formulaire.
0
Aldagon72 Messages postés 10 Date d'inscription jeudi 2 février 2012 Statut Membre Dernière intervention 13 mai 2013
6 mai 2013 à 11:37
Suivant tes conseils, voici ce que j'ai fais, je n'ai mis que la partie après values :
(" & Forms!TexteMaquette & "," & Forms!TexteZone & "," & Forms!CocherControle & "," & Forms!TexteRelType & "," & Forms!TexteDescription & "," & Forms!TexteSI & "," & Forms!TexteType & ")"

Sauf que lorsque je lance mon formulaire, que je saisis mes données et que je valide, il me met une erreur de compilation, Incompatibilité de type. Et ce pour Forms!TexteMaquette. Est-ce que le fait que le champ soit un champ texte y est pour quelque chose ?
0
Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015
6 mai 2013 à 11:39
comment s'apelle ton formulaire?
tu es censé mettre forms!nomformulaire!textemaquette

Et oui c'est parce que c'est un champ texte il te faut rajouter des ' ' donc ça te donnerais
' " & forms!nomformulaire!textemaquette & " ' , "
0
Aldagon72 Messages postés 10 Date d'inscription jeudi 2 février 2012 Statut Membre Dernière intervention 13 mai 2013
13 mai 2013 à 08:53
Je te remercie pour ton aide, ça m'avance beaucoup
0
Uryon Messages postés 73 Date d'inscription lundi 29 avril 2013 Statut Membre Dernière intervention 21 janvier 2015
13 mai 2013 à 09:49
De rien ^^ Bonne continuation et bon courage.
0