Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/03/2011, 18h10   #1
Invité régulier
 
Inscription : février 2009
Messages : 27
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 27
Points : 7
Points : 7
Par défaut Requête INSERT INTO sous VBA qui ne marche pas

Bonjour à tous,

J'ai un code VBA qui consiste à insérer dans une table "SELECT_DEP" le contenu d'une zone de liste à sélection multiple.

Le code se compose donc de deux parties.
Une première qui consiste à récupérer le contenu de la liste.
Une seconde qui consiste à insérer le contenu de chaque ligne sélectionnée dans la table.

Ce code ci-dessous marche pour la première étape, mais pas pour la seconde.

Est-ce une erreur de définition de variable?
Une erreur dans la ligne contenant la requête SQL?

Merci pour vos réponses.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Private Sub Commande27_Click()
 
Dim varI As Variant
Dim monFiltre As String
Dim strSQL As String
Dim MyDB As DAO.Database
Set MyDB = CurrentDb()
 
If Me.departement.ItemsSelected.Count > 0 Then
For Each varI In Me.departement.ItemsSelected
monFiltre = monFiltre & Chr(34) & Me.departement.Column(0, varI) & Chr(34) & ","
add_dep = Me.departement.Column(0, varI)
strSQL = "INSERT INTO SELECT_DEP(dep) VALUES (""&add_dep&"");"
MsgBox Me.departement.Column(0, varI)
Next varI
monFiltre = Left(monFiltre, Len(monFiltre) - 1)
End If
End Sub
Shinoda00 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2011, 18h33   #2
Expert Confirmé Sénior
 
Avatar de f-leb
 
Homme Fabien
Enseignant
Inscription : janvier 2009
Messages : 2 410
Détails du profil
Informations personnelles :
Nom : Homme Fabien
Âge : 41
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Enseignant

Informations forums :
Inscription : janvier 2009
Messages : 2 410
Points : 4 439
Points : 4 439
bonjour,

on dirait qu'il manque des cotes: "

Code :
1
2
 
strSQL = "INSERT INTO SELECT_DEP(dep) VALUES (""" & add_dep & """);"
f-leb est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/03/2011, 09h56   #3
Invité régulier
 
Inscription : février 2009
Messages : 27
Détails du profil
Informations forums :
Inscription : février 2009
Messages : 27
Points : 7
Points : 7
Ce n'est pas un problème de "", add_dep est une variable.
De plus, la requête SQL fonctionne (avec l'assistant Requête Ajout) apparemment.

EDIT: j'ai trouvé!

Voici la ligne à insérer :
Code :
DoCmd.RunSQL ("INSERT INTO SELECT_DEP(dep) VALUES (" & add_dep & ");")
Shinoda00 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h56.


 
 
 
 
Partenaires

Hébergement Web