Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Lancer requete selection sans ouvrir

9 réponses
Avatar
xavier
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans un
formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance

9 réponses

Avatar
PatCatNat's
Salut,
Tu pourrais contourner le blème en faisant une requête création de table (et
ton formulaire basé bien entendu sur cette table...)

PatCatNat's

"xavier" a écrit dans le message de
news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans un
formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance



Avatar
PatCatNat's
Salut,
Tu pourrais contourner le blème en faisant une requête création de table (et
ton formulaire basé bien entendu sur cette table...)

PatCatNat's
"xavier" a écrit dans le message de
news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans un
formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance



Avatar
Bonsoir à tous,
Par ce que :
DoCmd.OpenQuery "MaRequete "
DoCmd.Minimize
ça serait complètement à côté de la plaque.

Espérant au moins par une question avoir fait avancé le smilblick...
Merci d'avoir lu jusque là.

xavier wrote:
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans un
formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance


Avatar
Raymond [mvp]
Bonjour.

il faudrait que tu précises si le résultat de la requête est formé de 1
seule ligne avec un seul champ ou de 1 ligne avec plusieurs champs ou de
plusieurs lignes avec plusieurs champs car le traitement sera différent
selon ce résultat.
si tu ne reçois qu'une seule ligne avec un seul champ, tu peux utiliser la
fonction DLookup et si tu as plusieurs champs et/ou plusieurs lignes avec
plusieurs contrôles à charger tu dois utiliser un recordset.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans le message de
news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans un
formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance



Avatar
xavier
En fait ca ne marche pas parce que mon formulaire est par
cette manip lui aussi diminué.
Et puis je ne veux pas que l'utilsateur voit passer
devant lui des fenetres qui s'ouvrent et se ferment dans
tous les sens.

Merci quand meme d'avoir apporté ta pierre au schmilblik

-----Message d'origine-----
Bonsoir à tous,
Par ce que :
DoCmd.OpenQuery "MaRequete "
DoCmd.Minimize
ça serait complètement à côté de la plaque.

Espérant au moins par une question avoir fait avancé le
smilblick...

Merci d'avoir lu jusque là.

xavier wrote:
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans
un


formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance



.




Avatar
xavier
Le resultat de ma 2e requete est une ligne avec 3 champs
que je souhaite recuperer.

Mais j'ai dejà crer mes requetes en mode cretaion, elles
sont donc stockées avec les autres requetes. Le plus
simple serait de relancer via VB (faire Requery mais j'ai
essayé de faire MaRequete.Requery et ca ne marche pas).

J'ai essayé avec des REcordset mais etant donné que j'ai
2 requetes, je ne sais pas comment basé le 2e Recordset
sur le 1er.

j'ai fait :

Set rst1 = db.OpenRecordSet("SELECT '%' AS Pourcentage,
IIf([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE])) AS
[Code Importance], Count(EqBtsWst.EQ_EQUIPEMENT) AS
Nombre FROM EqBtsWst GROUP BY '%', IIf
([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE]));")

Set rst2 = db.OpenRecordSet("TRANSFORM First([001 -
Compte codes imp].Nombre) AS PremierDeNombre SELECT [001 -
Compte codes imp].Pourcentage FROM [001 - Compte codes
imp] GROUP BY [001 - Compte codes imp].Pourcentage PIVOT
[001 - Compte codes imp].[Code Importance];")

J'ai donc essayé en remplacant ma requete [001 - Compte
codes imp] par rst1 mais c'est là que ca coince.

Merci beaucoup de bien vouloir m'aider si possible


-----Message d'origine-----
Bonjour.

il faudrait que tu précises si le résultat de la requête
est formé de 1

seule ligne avec un seul champ ou de 1 ligne avec
plusieurs champs ou de

plusieurs lignes avec plusieurs champs car le traitement
sera différent

selon ce résultat.
si tu ne reçois qu'une seule ligne avec un seul champ,
tu peux utiliser la

fonction DLookup et si tu as plusieurs champs et/ou
plusieurs lignes avec

plusieurs contrôles à charger tu dois utiliser un
recordset.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans
le message de

news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans
un


formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance




.




Avatar
Raymond [mvp]
ces 2 requêtes qui n'ont rien à voir, sont déjà faites, tu dis, donc elles
fonctionnent.
la 2e requête doit alimenter 3 contrôles de ton formulaire, ok.
la 1ere est dans quelle utilisation ? record source du formulaire ,
alimenter d'autres contrôles ? alimenter la requête 2 ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans le message de
news:1ce9601c422e6$e59c3a60$
Le resultat de ma 2e requete est une ligne avec 3 champs
que je souhaite recuperer.

Mais j'ai dejà crer mes requetes en mode cretaion, elles
sont donc stockées avec les autres requetes. Le plus
simple serait de relancer via VB (faire Requery mais j'ai
essayé de faire MaRequete.Requery et ca ne marche pas).

J'ai essayé avec des REcordset mais etant donné que j'ai
2 requetes, je ne sais pas comment basé le 2e Recordset
sur le 1er.

j'ai fait :

Set rst1 = db.OpenRecordSet("SELECT '%' AS Pourcentage,
IIf([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE])) AS
[Code Importance], Count(EqBtsWst.EQ_EQUIPEMENT) AS
Nombre FROM EqBtsWst GROUP BY '%', IIf
([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE]));")

Set rst2 = db.OpenRecordSet("TRANSFORM First([001 -
Compte codes imp].Nombre) AS PremierDeNombre SELECT [001 -
Compte codes imp].Pourcentage FROM [001 - Compte codes
imp] GROUP BY [001 - Compte codes imp].Pourcentage PIVOT
[001 - Compte codes imp].[Code Importance];")

J'ai donc essayé en remplacant ma requete [001 - Compte
codes imp] par rst1 mais c'est là que ca coince.

Merci beaucoup de bien vouloir m'aider si possible


-----Message d'origine-----
Bonjour.

il faudrait que tu précises si le résultat de la requête
est formé de 1

seule ligne avec un seul champ ou de 1 ligne avec
plusieurs champs ou de

plusieurs lignes avec plusieurs champs car le traitement
sera différent

selon ce résultat.
si tu ne reçois qu'une seule ligne avec un seul champ,
tu peux utiliser la

fonction DLookup et si tu as plusieurs champs et/ou
plusieurs lignes avec

plusieurs contrôles à charger tu dois utiliser un
recordset.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans
le message de

news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans
un


formulaire.

J'aimerais savoir comment faire pour lancer une requete
selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance




.




Avatar
xavier
Mes 2 requetes fonctionnent bien.

la 1ere fait une selection et compte les donnees à
traiter de ma table.
Le resultat est un champ avec 3 enregistrements.
La 2e fait une analyse croisee et le transforme en un
enregistrement avec 3 champs.

Les 3 zones de mon formulaire recuperent les valeurs
contenues dans chaque champ.

Je ne vois pas non plus comment ne faire qu'une seule
requete.

-----Message d'origine-----
ces 2 requêtes qui n'ont rien à voir, sont déjà faites,
tu dis, donc elles

fonctionnent.
la 2e requête doit alimenter 3 contrôles de ton
formulaire, ok.

la 1ere est dans quelle utilisation ? record source du
formulaire ,

alimenter d'autres contrôles ? alimenter la requête 2 ?

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit
dans le message de

news:1ce9601c422e6$e59c3a60$
Le resultat de ma 2e requete est une ligne avec 3 champs
que je souhaite recuperer.

Mais j'ai dejà crer mes requetes en mode cretaion, elles
sont donc stockées avec les autres requetes. Le plus
simple serait de relancer via VB (faire Requery mais j'ai
essayé de faire MaRequete.Requery et ca ne marche pas).

J'ai essayé avec des REcordset mais etant donné que j'ai
2 requetes, je ne sais pas comment basé le 2e Recordset
sur le 1er.

j'ai fait :

Set rst1 = db.OpenRecordSet("SELECT '%' AS Pourcentage,
IIf([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE])) AS
[Code Importance], Count(EqBtsWst.EQ_EQUIPEMENT) AS
Nombre FROM EqBtsWst GROUP BY '%', IIf
([EQ_CODE_IMPORTANCE]='PRIORITAIRE' Or
[EQ_CODE_IMPORTANCE]='STRATEGIQUE
TRANSMISSION','PRIORITAIRES',IIf([EQ_CODE_IMPORTANCE]
='STRATEGIQUE' Or [EQ_CODE_IMPORTANCE]='TRES
STRATEGIQUE','STRATEGIQUES',[EQ_CODE_IMPORTANCE]));")

Set rst2 = db.OpenRecordSet("TRANSFORM First([001 -
Compte codes imp].Nombre) AS PremierDeNombre SELECT
[001 -

Compte codes imp].Pourcentage FROM [001 - Compte codes
imp] GROUP BY [001 - Compte codes imp].Pourcentage PIVOT
[001 - Compte codes imp].[Code Importance];")

J'ai donc essayé en remplacant ma requete [001 - Compte
codes imp] par rst1 mais c'est là que ca coince.

Merci beaucoup de bien vouloir m'aider si possible


-----Message d'origine-----
Bonjour.

il faudrait que tu précises si le résultat de la requête
est formé de 1

seule ligne avec un seul champ ou de 1 ligne avec
plusieurs champs ou de

plusieurs lignes avec plusieurs champs car le traitement
sera différent

selon ce résultat.
si tu ne reçois qu'une seule ligne avec un seul champ,
tu peux utiliser la

fonction DLookup et si tu as plusieurs champs et/ou
plusieurs lignes avec

plusieurs contrôles à charger tu dois utiliser un
recordset.


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans
le message de

news:1c8a701c4224c$f2ddfd70$
Bonjour,

Je lance 2 requetes dont je recupere le resultat dans
un


formulaire.

J'aimerais savoir comment faire pour lancer une
requete



selection en VB sans que le resultat s'ouvre en grand.

Merci d'avance




.




.





Avatar
Raymond [mvp]
Donc,
tu fais un recordset sur ta requête1, tu boucles dessus et tu charges les 3
conrtrôles de formulaire avec le champ.
tu fais idem pour la 2e.
une idée pour t'inspirer à ajuster à ton problème:
Dim Rs As DAO.Recordset
Dim Db As DAO.Database
Set Db = CurrentDb

Set Rs = Db.OpenRecordset("requête1")
monchamp1 = Rs.Fields(0)
Rs.MoveNext
monchamp2 = Rs.Fields(0)
Rs.MoveNext
monchamp3 = Rs.Fields(0)
Rs.Close
Set Rs = Nothing

' la deuxième requête
Set Db = Nothing


--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"xavier" a écrit dans le message de
news:1d07801c42309$9eb730a0$
Mes 2 requetes fonctionnent bien.

la 1ere fait une selection et compte les donnees à
traiter de ma table.
Le resultat est un champ avec 3 enregistrements.
La 2e fait une analyse croisee et le transforme en un
enregistrement avec 3 champs.

Les 3 zones de mon formulaire recuperent les valeurs
contenues dans chaque champ.

Je ne vois pas non plus comment ne faire qu'une seule
requete.