31. maj 2007 - 18:48
Der er
12 kommentarer og 1 løsning
Tilfældige poster
Jeg har en tabel som indeholde poster med et ID med Autonummerering. Ud fra ID skal der vælges et bestemt antal tilfældige poster. Jeg benytter følgen SQL SELECT TOP 10 [Aflæsning forbruger].IDbruger, Rnd([IDbruger]) AS Udtryk1, [Aflæsning forbruger].Gade, [Aflæsning forbruger].Husnr, [Aflæsning forbruger].Bogstav, [Aflæsning forbruger].Parti, [Aflæsning forbruger].Målernr, [Aflæsning forbruger].År, [Aflæsning forbruger].[Aflæsning 2008], [Aflæsning forbruger].[Ny måler nr], [Aflæsning forbruger].Monteringsdato, [Aflæsning forbruger].[Aflæsnymåler 2008] FROM [Aflæsning forbruger] WHERE ((([Aflæsning forbruger].Parti) Between [Angiv Partinummer] And [Angiv Partinummer])) ORDER BY Rnd([IDbruger]); og får vist 10 poster hvilket passer. Dette kan jeg også se i en formular. Jeg vil gerne kunne ændre tallet 10 uden at skulle rette tallet i SQL visningen kan det lade sige gøre eller bygger jeg det forkert op? Jeg er ikke en "ørn" til dette.
Annonceindlæg fra Conscia
Hvis jeg forstår det korrekt så vil det her måske virke: ------- kode ------- <% strAntalPoster = 10 strSQL = "SELECT TOP " & strAntalPoster & " [Aflæsning forbruger].IDbruger, Rnd([IDbruger]) AS Udtryk1, [Aflæsning forbruger].Gade, [Aflæsning forbruger].Husnr, [Aflæsning forbruger].Bogstav, [Aflæsning forbruger].Parti, [Aflæsning forbruger].Målernr, [Aflæsning forbruger].År, [Aflæsning forbruger].[Aflæsning 2008], [Aflæsning forbruger].[Ny måler nr], [Aflæsning forbruger].Monteringsdato, [Aflæsning forbruger].[Aflæsnymåler 2008] FROM [Aflæsning forbruger] WHERE ((([Aflæsning forbruger].Parti) Between [Angiv Partinummer] And [Angiv Partinummer])) ORDER BY Rnd([IDbruger])" %>
If you want to change your SQL to select a different number of records then I would suggest building your SQL dnamically. Something like this Dim sSQL As String sSQL = "SELECT TOP " & InputBox("Enter number", , 10) & " * FROM YourTable ...." CurrentDb.QueryDefs("qryRandRecords").SQL = sSQL
soerenlyn jeg har prøvet dit forslag og får beskeden Det er en ugyldig SQL sætning "Delete", "Insert", "Procedure" , "Select" , eller "Update" var ventet. Terry jeg er ved at prøve dit sidste forslag.
terry har prøvet Dim sSQL As String sSQL = "SELECT TOP " & InputBox("Enter number", , 10) & " * FROM [Aflæsning forbruger]" CurrentDb.QueryDefs("qryRandRecords").SQL = sSQL får det samme svar: Det er en ugyldig SQL sætning "Delete", "Insert", "Procedure" , "Select" , eller "Update" var ventet.
If you can send me your dB then maybe I can see the problem ekspertenATsanthell.dk AT = @
Hvilket sprog er det du programmerer i?
soerenlyn Bruger Access 2003 terry har sendt et eksempel til dig
prøv med: SELECT TOP 10 [Aflæsning forbruger].IDbruger, Rnd([IDbruger]) AS Udtryk1, [Aflæsning forbruger].Gade, [Aflæsning forbruger].Husnr, [Aflæsning forbruger].Bogstav, [Aflæsning forbruger].Parti, [Aflæsning forbruger].Målernr, [Aflæsning forbruger].År, [Aflæsning forbruger].[Aflæsning 2008], [Aflæsning forbruger].[Ny måler nr], [Aflæsning forbruger].Monteringsdato, [Aflæsning forbruger].[Aflæsnymåler 2008] FROM [Aflæsning forbruger] WHERE ((([Aflæsning forbruger].Parti) Between [Angiv Partinummer] And [Angiv Partinummer])) ORDER BY NEWID();
01. juni 2007 - 22:52
#10
a1 har prøvet dit forslag men der er problem med NEWID()den er ikke defineret. Det er tallet 10 jeg vil ændre. terry er ved at se på fremsendte
11. juni 2007 - 19:55
#11
Hvis jeg vælger designvisning kan jeg rette (indtaste den ønskede værdi i menuen første værdi) men det er ikke det optimale så jeg prøver stadig.
12. juni 2007 - 09:32
#12
It shouldnt be necessary to go into design view. Have you placeda text box on the top of the form as I suggested in my mail?
23. juni 2007 - 17:56
#13
whats the status Allan?
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser