GNT sans publicité, site mobile, fonctionnalitées exclusives...

Parametrage des TOP

Le
Pitalugue
Bonsoir,

j'ai plusieur requetes qui effectue une selection des top 10 de plusieurs
tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le top 10
(ex Top 100 ) je dois me repalucher tous les script sql de chaque requete.
Quel est le moyen d'ecrire a un seul endroit le parametre du TOP?

Pitalugue
Lire les 5 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Pitalugue
Le #5365591
bonsoir, quelqu'un aurait il une idée ?

j'ai plusieur requetes qui effectue une selection des top 10 de plusieurs
tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le top 10
(ex Top 100 ) je dois me repalucher tous les script sql de chaque requete.
Quel est le moyen d'ecrire a un seul endroit le parametre du TOP?

Pitalugue




3stone
Le #5365561
Salut,

"Pitalugue"
j'ai plusieur requetes qui effectue une selection des top 10 de plusieurs
tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le top 10
(ex Top 100 ) je dois me repalucher tous les script sql de chaque requete.
Quel est le moyen d'ecrire a un seul endroit le parametre du TOP?




Si ce sont des requêtes enregistrées, je ne vois pas comment contourner...

Mais, si tu doit triturer à ce point tes requêtes, pourquoi ne pas les
construire de facon dynamique ? a partir d'un formulaire ?
Et là, tu pourras faire à loisir...


--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------

Eric
Le #5365541
"Pitalugue" news:c88hcq$m97$:

Bonsoir,

j'ai plusieur requetes qui effectue une selection des top 10 de
plusieurs tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le
top 10 (ex Top 100 ) je dois me repalucher tous les script sql de
chaque requete. Quel est le moyen d'ecrire a un seul endroit le
parametre du TOP?

Pitalugue





Bonsoir,

Alternative à ce que propose Pierre, les écrire toutes dans un module VBA
et les appeler quand bon te semble. Du genre :

Sub test()
Dim strSQL As String, nb As String, rq As DAO.QueryDef, predicatTop As
String
nb = InputBox("Top Combien ?")
If Len(nb) > 0 Then
predicatTop = " Top " & CInt(nb)
Else
predicatTop = "" ' Cancel equivalent à OK sans renseigner
End If
strSQL = "Select" & predicatTop & " societe_client from tclient order
by societe_client;"
Set rq = CurrentDb.CreateQueryDef("TempQry", strSQL)
DoCmd.OpenQuery "TempQry"
CurrentDb.QueryDefs.Delete "TempQry"
End Sub

A+
Eric

Pitalugue
Le #5365451
rebonsoir et merci,

j'ai compris le principe du code vba mais il plante sur rq As DAO.QueryDef.

Je ne maitrise pas assez pour savoir d'ou cela peut venir. ..

merci

"Eric"
"Pitalugue" news:c88hcq$m97$:

Bonsoir,

j'ai plusieur requetes qui effectue une selection des top 10 de
plusieurs tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le
top 10 (ex Top 100 ) je dois me repalucher tous les script sql de
chaque requete. Quel est le moyen d'ecrire a un seul endroit le
parametre du TOP?

Pitalugue





Bonsoir,

Alternative à ce que propose Pierre, les écrire toutes dans un module VBA
et les appeler quand bon te semble. Du genre :

Sub test()
Dim strSQL As String, nb As String, rq As DAO.QueryDef, predicatTop As
String
nb = InputBox("Top Combien ?")
If Len(nb) > 0 Then
predicatTop = " Top " & CInt(nb)
Else
predicatTop = "" ' Cancel equivalent à OK sans renseigner
End If
strSQL = "Select" & predicatTop & " societe_client from tclient order
by societe_client;"
Set rq = CurrentDb.CreateQueryDef("TempQry", strSQL)
DoCmd.OpenQuery "TempQry"
CurrentDb.QueryDefs.Delete "TempQry"
End Sub

A+
Eric



Eric
Le #5365441
Bonsoir,

il faut que tu charges la Référence Microsoft DAO 3.x Object Library (3.6
est la derniere je crois) dans la fenetre VBA .
Menu Outils Références...

Eric

"Pitalugue" news:c8b9k1$b4p$:

rebonsoir et merci,

j'ai compris le principe du code vba mais il plante sur rq As
DAO.QueryDef.

Je ne maitrise pas assez pour savoir d'ou cela peut venir. ..

merci

"Eric"
"Pitalugue" news:c88hcq$m97$:

Bonsoir,

j'ai plusieur requetes qui effectue une selection des top 10 de
plusieurs tables differentes.
Cependant a chaque fois que je souhaite extraire autre chose que le
top 10 (ex Top 100 ) je dois me repalucher tous les script sql de
chaque requete. Quel est le moyen d'ecrire a un seul endroit le
parametre du TOP?

Pitalugue





Bonsoir,

Alternative à ce que propose Pierre, les écrire toutes dans un module
VBA et les appeler quand bon te semble. Du genre :

Sub test()
Dim strSQL As String, nb As String, rq As DAO.QueryDef,
predicatTop As
String
nb = InputBox("Top Combien ?")
If Len(nb) > 0 Then
predicatTop = " Top " & CInt(nb)
Else
predicatTop = "" ' Cancel equivalent à OK sans renseigner
End If
strSQL = "Select" & predicatTop & " societe_client from tclient
order
by societe_client;"
Set rq = CurrentDb.CreateQueryDef("TempQry", strSQL)
DoCmd.OpenQuery "TempQry"
CurrentDb.QueryDefs.Delete "TempQry"
End Sub

A+
Eric








Publicité
Suivre les réponses
Poster une réponse
Anonyme