Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1661 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Afficher le résultat de ma requete VBA (noob)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Afficher le résultat de ma requete VBA (noob)

n°1426750
asticot777
Posté le 17-08-2006 à 16:08:09  profilanswer
 

Bonjour
 
je veux executer une requete paramétrée et afficher le résultat
au final je pense avoir trouvé le bon code mais il doit me manquer un truc pour que le tableau de mon résultat s'affiche
 
pas de message d'erreur, il ne se passe rien
 
Private Sub id_demande_DblClick(Cancel As Integer)
 
    id_select = Me.id_demande
 
    Dim db As DAO.Database, rst As DAO.Recordset, fld As DAO.Field
    Dim sSQL As String
    ' Ouverture de la base de données
    Set db = CurrentDb
    sSQL = "SELECT T_DEMANDE.id_demande FROM T_DEMANDE WHERE T_DEMANDE.id_demande = " & id_select & ";"
    ' Ouverture du recordset
    Set rst = db.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
     
End Sub
 
Le but c que le double-clique sur un champ d'une table affichée ds un formulaire, ouvre une nouvelle table ne contenant que cette ligne
la variable id_select contient bien ce que je veux, j'ai pu tester.

mood
Publicité
Posté le 17-08-2006 à 16:08:09  profilanswer
 

n°1426950
olivthill
Posté le 17-08-2006 à 23:53:57  profilanswer
 

Les lignes de code sont correctes (mis à part qu'il est idiot de sélectionner uniquement id_demandé, quand on connait déjà id_demandé), et il est normal que le résultat ne soit pas visible.
La requête va chercher le ou les enregistrements qui correspondent au SELECT, et elle le/les met dans rst.
Pour voir le contenu de rst, il faudrait ajouter, par exemple

MsgBox(rst![id_demandé])
ou
MsgBox(rst![une_autre_colonne_du_select])


Ou bien, il est possible de se créer un écran (un formulaire) contenant un champ, appelé par exemple champ1, que l'on peut remplir avec le résultat de la requête par

Me![champ1] = rst![une_autre_colonne_du_select]


Pour "ouvrir une nouvelle table", il faudrait créer une nouvelle table, insérer le résultat de la requête dans cette table, puis ouvrir cette table, ce qui est peut-être un peu compliqué.
Peut-être qu'il serait plus simple de passer par CurrentDb.Execute "Select ..." mais je ne l'ai pas testé.
 
Ou bien utiliser DoCmd.OpenQuery "le_nom_dune_requete"


Message édité par olivthill le 17-08-2006 à 23:57:05
n°1427011
asticot777
Posté le 18-08-2006 à 09:47:39  profilanswer
 

Merci
 
en fait dans mon exemple je l'ai mis qu'un champ à afficher par la requete, mais en réalité je voudrais afficher la ligne comple avec tous les champs, pour pouvoir effectuer des modif sur cette ligne
 
je voudrais qu'il se passe la meme chose qu'avec une requete sql access

n°1427136
asticot777
Posté le 18-08-2006 à 12:49:09  profilanswer
 

plus grossierement
j'ai ça
 
id_select = Me.id_demande
Monsql = "Select * From T_DEMANDE Where id_demande = " & id_select
 
mais il me manque tout ce qu'il faut autour pour que le resultat de ma requete s'affiche sous forme de tableau.
 
je suppose que j'ai ce que je cherche dans Monsql, mais je ne sais pas comment l'afficher ou l'executer
 
merci de votre aide
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Afficher le résultat de ma requete VBA (noob)

 

Sujets relatifs
Afficher la datepb requête update Access avec equi-jointure de table
[VBA] Probleme copie after + ...quotes dans requête pose problème
[VBA] appels fonctions .dll C/C++débutant - vérifier le résultat de mon code [RESOLU]
[MySql] : requete de premier elettres d'un clonneOutils pour connaitre la quantité de donnée par requete SQL
[PHP] Array dans une requète SQLEXCEL VBA - Bug pour affecter valeurs dans tableau
Plus de sujets relatifs à : Afficher le résultat de ma requete VBA (noob)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR