Avatar billede iballan Praktikant
08. september 2007 - 12:46 Der er 15 kommentarer og
1 løsning

Forespørgsel i en bestemt at flere tabeller

Hej

Jeg vil høre om det er muligt at lave variabel i SELECT FROM.

Jeg har to tabeller:

2006 og 2007

Tabellerne indeholder de samme felter, og forespørgslen skal kunne køres på begge tabeller.

SELECT 2006.nummer
FROM 2006;

Kan tallet 2006 erstattes med eks. noget a la

Forms![formularnavn]!feltnavn

så brugeren kan vælge hvilken tabel forespørgslen skal laves på?
Avatar billede terry Ekspert
08. september 2007 - 12:56 #1
Yes but you need to build  the SQL in th equery dynamically.

currentdb.QueryDefs("NameOfQueryGoesHere").SQL = "SELECT " & FieldContainingYear & ".nummer FROM " & FieldContainingYear
Avatar billede ffsoft Praktikant
08. september 2007 - 17:47 #2
strSQL = "Select " & Forms![formularnavn]!feltnavn & ".nummer FROM " & Forms![formularnavn]!feltnavn & ";"

rst.Open strSQL, conn
Avatar billede iballan Praktikant
16. september 2007 - 15:01 #3
Hvordan skal jeg bruge den kode ffsoft skriver? Kan jeg lave en forspørgsel:

Select & Forms![Formular1]!aar & .nummer FROM  & Forms![Formular1]!aar &;

Jeg havde tænkt mig at lave en formular med en tekstboks hvori man skriver hvilket årstal man vil køre forespørgslen på. Efterfølgende skal brugeren trykke på en knap som så åbner en ny formular med de data forespørgslen indeholder.

Håber det er til at forstå.....
Avatar billede mugs Novice
16. september 2007 - 15:57 #4
Hvis tabelerne indeholder samme felter og iøvrigt er ens, ville jeg slå dem samen til een tabel og køre forespørgslen med et kriterie under årstallet:

[Indtast årstal]
Avatar billede iballan Praktikant
17. september 2007 - 16:36 #5
Det er ikke helt optimalt for mine data at gøre det på den måde. Kan det ikke lade sige gøre på den anden måde?
Avatar billede terry Ekspert
17. september 2007 - 18:29 #6
?which answer are you refering to?
Avatar billede terry Ekspert
17. september 2007 - 18:32 #7
"Hvordan skal jeg bruge den kode ffsoft skriver? Kan jeg lave en forspørgsel"

the answer given 08/09-2007 12:56:03 alters the SQL in a query dynamically. You obviously need to modify it to take the value from

Forms![formularnavn]!feltnavn
Avatar billede iballan Praktikant
20. september 2007 - 18:14 #8
Hej terry
Hvor skal jeg indsætte sådan en dynamisk forespørgsel?
Skal jeg bare oprette en forespøgsel i SQL mode og sætte hele linien ind "strSQL=.....rst.Open strSQL,conn" ?
Avatar billede mugs Novice
20. september 2007 - 18:16 #9
Du indsætter dette som et kriterie:

Forms![formularnavn]!feltnavn

Det gør, at forespørgslen kun vil returnere de poster der matcher kriteriet i den pågældende formular.
Avatar billede iballan Praktikant
20. september 2007 - 18:25 #10
Hej Mugs
Kører det kriterie ikke på felterne i tabellen, og ikke tabelnavnet?
Avatar billede mugs Novice
20. september 2007 - 18:30 #11
Det kører på den tabel hvori feltet ligger.
Avatar billede iballan Praktikant
20. september 2007 - 18:42 #12
ok, men jeg vil gerne have mulighed for at taste navnet på den tabel som jeg gerne vil køre forespørgslen på.
Avatar billede mugs Novice
20. september 2007 - 18:45 #13
Så skal du se på svarene fra terry / ffsoft
Avatar billede iballan Praktikant
20. september 2007 - 18:51 #14
Ja, og det er dem jeg stiller spørgsmål til kl. 18:14 idag. Jeg forstår ikke hvordan jeg skal bruge den sætning han skriver.
Avatar billede terry Ekspert
20. september 2007 - 18:59 #15
First make a query which takes the date from one of the tables.
Give the query a name, for example qryYear.

Now in the form where you select the year place a button. Then in the buttons on Click event you need som ecod esimilar to this.


currentdb.QueryDefs("qryYear").SQL = "SELECT " & Forms![formularnavn]!feltnavn
& ".nummer FROM " & Forms![formularnavn]!feltnavn


DoCmd.OpenQuery "qryYear"
Avatar billede terry Ekspert
20. september 2007 - 19:00 #16
and if you still cant get it to work then you can send your db to ekspertenATsanthell.dk AT = @
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester