elpaulo
Messages postés135Date d'inscriptionvendredi 17 novembre 2000StatutMembreDernière intervention12 août 2008
-
8 juin 2005 à 10:02
elpaulo
Messages postés135Date d'inscriptionvendredi 17 novembre 2000StatutMembreDernière intervention12 août 2008
-
8 juin 2005 à 13:30
Bonjour.
J'ai un petit souci, car je ne sais pas comment exécuter et récupérer les résultats d'une requete avec le vb d'access.
Je vous explique :
-J'ai une table salarie avec numéro, nom ...
-J'ai créé un formulaire qui affiche tous ces champs, mais je l'ai créé en vb, pas a l'aide de l'assistant qui fabrique des macros
-Je voudrais donc créer un bouton qui recherche un salarie en entrant son nom approximatif et qui affiche les données contenues dans le recordset correspondant.
Je suppose qu'il y aura donc un like dans la requete
J'envisage de faire saisir le nom recherché dans une imputbox.
Comment exécuter cette requete en vba?
Pour moi, ca devrai faire a peu pres :
Private sub CmdRechercherSalarie_Click()
dim requete as string
dim nomrech as string
nomrech = imputbox("entrez le nom")
requete = "SELECT NumeroSalarie FROM Salarie WHERE NomSalarie LIKE nomrech"
et apres??? comment récupérer les résultats de la requete??? merci d'avance
TrafMaxime
Messages postés288Date d'inscriptionmercredi 4 mai 2005StatutMembreDernière intervention26 janvier 20121 8 juin 2005 à 10:45
Pour ca pas de prob(en vb.net) :
dim nomapproxsalar as string = textbox1.text 'je connais pas bien les inputs-boxes
dim requete as string = "select numsalarie, nomsalarie from salarie
where nomsalarie like ' % " + nomapproxsalar + " % ' "
le ' pour : =
le % pour : il peut y avoir des caractères avant....(ou après)
le " pour casser ton string
le + pour ajouter du string
pour récupérer les résultats, que tu cherches avec un oledbdataadapter(
2 param : ta requete et une connexion), tu peux utiliser un dataset, un
genre de tableau image de tes données, modifiable à souhait :
dim da as new oledbdataadapter(requete, oledbconnection1)
'il faut aussi crée une connexion avec un objet oledbconnection (ou en
code, mais la synthaxe est longue)
dim ds as new dataset()
ds.clear()
'ca c'est devenu une habitude bien pratique
en cas de rechargement de la form
da.fill(ds)
'ca y est, ton dataset est rempli avec tout les salariés qui ont un nom
ressemblant au param
...et après ??
...tout est possible, tout reste à faire mais tes données sont accessibles dans le ds :
tbbuim1
Messages postés940Date d'inscriptionjeudi 20 février 2003StatutMembreDernière intervention 3 février 20119 8 juin 2005 à 11:29
Pfffffffffffff, mais arrêtezzzzzzzzzzzz
Il est sous Access, ne le faite pas faire de recordset, il doit apprendre à utiliser Access par fait du Vb sous Access
Pour exécuter la requête rien de plus simple sous access.
Tu fais ta requête comme tu fais une table ou un formulaire, tu vas
dans requête, tu fais nouveau et tu construis ta requête, à la limite
tu copies le code sql dans l'endroit prévu à cet effet. Tu lui donnes
un nom. Une fois que tu as ta requête
A l'évènement clic du bouton, tu écris
Docmd.OpenQuery "Nom de la requete"
Si c'est une rq d'ajout ou de suppression, il te demandera si tu veux
modifier la table, c'est question sont lourd à la longue, donc pour les
enlever il faut encadre la commande de ça:
DoCmd.SetWarning False 'enlève les messages
Docmd.openquery "Nom de la requête"
DoCmd.SetWarning True 'réactive les messages
Voilà, regarde l'aide d'access, elle est assez bien faite, ya un tas d'exemple
TBBUIM