|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Invité régulier
![]() Inscription : octobre 2003 Messages : 25 ![]() |
Bonjour,
Je me tourne vers vous car je n'arrive pas du tout à résoudre mon problème. J'ai un formulaire access qui est censé me servir à transmettre des mails. J'ai récupéré un package (procédure vba + formulaire) que je voudrai faire évoluer un poil. J' n'y connais rien en vba et je souhaiterai que ma requête sql (en gras ci-dessous) soit paramétrée, c'est à dire qu'elle prenne la valeur d'une liste déroulante dans le formulaire pour effectuer la sélection. Je vous mets le code vba en espérant que vous pourrez m'aider. Merci. Code :
|
||
|
|
00
|
|
|
#2 |
|
Membre éclairé
![]() |
Bonjour,
Code :
Set oRst1 = oDB.OpenRecordset("SELECT stEmail FROM tblClient WHERE region=" & Me.monCombobox & ";") Pour ton info, le paramètre de la méthode OpenRecordset est une chaîne de caractère (String). Tu la concatènes avec le symbole & avec la variable de ton choix. Me représente le formulaire dans lequel tu écris ton code. monComboBox représente le contrôle liste déroulante de ton formulaire. Attention à la propriété colonne liée de ton contrôle. Si la colonne liée est un identifiant sous forme de nombre, c'est parfait. Si c'est une string, il faut rajouter des guillemets simples de part et d'autres de ta variable. Comme ceci : Code :
Set oRst1 = oDB.OpenRecordset("SELECT stEmail FROM tblClient WHERE region='" & Me.monCombobox & "';") |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : octobre 2003 Messages : 25 ![]() |
Merci Paidge pour ces explications très claires ainsi que pour l'aide que tu m'apportes.
J'ai néanmoins un problème avec ta ligne de code car quand je l'exécute via un bouton sur le formulaire, il me renvoe une erreur : Erreur de compilation, utilisation incorrecte du mot clé "Me". Comment puis je faire ? |
|
|
00
|
|
|
#4 | ||
|
Membre éclairé
![]() |
Bonjour,
Tu as ce message car, ta Sub (procédure en FR), tu l'as placée dans un module. Dans ce cas, il faut écrire ça : Code :
|
||
|
|
00
|
|
|
#5 |
|
Invité régulier
![]() Inscription : octobre 2003 Messages : 25 ![]() |
On avance mais ça coince toujours.
Alors comment te dire ??? Lorque j'entre dans ma liste déroulante une région composée d'un seul mot (genre Paris), il me met : Erreur 3061 - Trop peu de paramètres - 1 attendu ; alors que des valeurs sont bien présentes dans la requête que je cible. Lorsque j'entre dans ma liste déroulante une région composée de plusieurs mots (genre Pays de la Loire), il me met : erreur 3075 - Erreur de syntaxe (opérateur absent) dans l'expression "region=Pays de la Lire". En espérant que tu puisses toujours m'aider. |
|
|
00
|
|
|
#6 | |
|
Membre éclairé
![]() |
Je pense que c'est ptet ça.
Citation:
|
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : octobre 2003 Messages : 25 ![]() |
J'avais essayé avec les simples quotes mais ca ne marche pas non plus, voir message d'erreur en pièce jointe. Et bien sur, j'ai des valeurs qui correspondent dans le stemail... Je ne comprends pas
|
|
|
00
|
|
|
#8 |
|
Invité régulier
![]() Inscription : octobre 2003 Messages : 25 ![]() |
Merci Paidge, ca marche en fait... Il fallait juste que j'actualise l'enregistrement pour que la valeur de la liste déroulante soit prise en compte.
Ouffff !! Merci encore, c'est heureux de trouver des personnes comme toi lorsque que l'on se sent seul dans une situation comme celle ci.
|
|
|
00
|
|
|
#9 |
|
Membre éclairé
![]() |
De rien
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com