Avatar billede -sofus- Nybegynder
17. marts 2003 - 18:32 Der er 21 kommentarer og
2 løsninger

Lave en listbox fra en anden tabel

Jeg har en database med flere tabler.

I min primære tabel, vil jeg have en listbox hvor jeg kan vælge nogle værdier som er defineret i en anden tabel:

eks:
en tabel der hedder kunder
en tabel der hedder kunde typer

Jeg vil have at når jeg tilføjer en ny kunde, så har jeg en listbox med de forskellige kundetyper.
Avatar billede mugs Novice
17. marts 2003 - 18:42 #1
Benyt en kombinationaboks / Liste i tabellens opslagsfane. Se evt. herefter på hændelsen "NotInList".
Avatar billede terry Ekspert
17. marts 2003 - 18:42 #2
In the table where you want to see a listbox (combo) then you change the field type to a lookup. When you change the type you will see lookup. This will start a wizard. Follow th ewizard and if your table relationshipd are OK it will (or should) make a list for you
Avatar billede terry Ekspert
17. marts 2003 - 18:43 #3
thats on a form mugs :o)
Avatar billede terry Ekspert
17. marts 2003 - 18:43 #4
.
Avatar billede mugs Novice
17. marts 2003 - 18:50 #5
Hi terry > I started from point zero, becaurse the question did not indicate, that the user is very familiar with Access.
Avatar billede -sofus- Nybegynder
17. marts 2003 - 19:06 #6
Det er næsten det jeg vil have, men:

Da jeg senere skal bruge det til ASP, så vil jeg have det så vælger navnet, men den skriver id altså et tal men den viser navnet, hvis du forstår hvad jeg mener.

eks: jeg har listboxen, den viser f.eks. Erhvervs kunde, men den har value der hedder 1 osv.

Det er simpelt at lave det på en asp side, men vil gerne have det i databasen.
Avatar billede -sofus- Nybegynder
17. marts 2003 - 19:08 #7
I ASP ville jeg bruge Choice "Erhvervs kunde" og bruge value "1"

Det må kunne lade sig gøre at lave det samme i access
Avatar billede mugs Novice
17. marts 2003 - 19:10 #8
Jeg aner intet om ASP om andet djævelskab på internettet. Så jeg bakker ud her.
Avatar billede -sofus- Nybegynder
17. marts 2003 - 19:11 #9
Du behøver heller ikke vide noget om ASP, jeg vil bare mene at man kan lave en listbox hvor punkterne har et navn fra en kolone og en værdi fra en anden.
Avatar billede mugs Novice
17. marts 2003 - 19:14 #10
Har du prøvet terry's forslag ?
Har du prøvet nogle andre andet ?
Avatar billede terry Ekspert
17. marts 2003 - 19:39 #11
if this is to be used in ASP then NONE of these answers will work. If you also want to be able to open Access and look directly into a table then try my answer I gave 17/03-2003 18:42:28

In ASP you CAN NOT see any Access forms or objects it is onlt the tables(data) you can use from Access.
Avatar billede -sofus- Nybegynder
17. marts 2003 - 21:10 #12
Terry I am building up a large database, and I want all the info in the database before moving on to the ASP coding.

I was just using the ASP as an example, because in ASP you can have a dropdown box a give a name and a value.

The main problem is, that if I use your method I will get the names from one table into another, but if I change the name in table1 then I have to change all the names manually in table2.

I hope you understand what I mean, it its a little complicated to explain in a forren language.
Avatar billede terry Ekspert
17. marts 2003 - 21:23 #13
If you normalize your database correctly then table one will have a foreign key referencing a record in table two. If you alter the name in table two then the primary key in table two which is the foreign key in table one will be the same. So even though you have altered the name in table two this name will be the one table one references.

Example:

tblOne
ID (primary key) 1
Txt (some text field) "Hej Med Dig"
FID (foreign key) 1 > references ID in tblTwo

tblTwo
ID (primary key) 1
YourName "sofus"

So at the moment tblOne is related to tblTwo and the name is "sofus"

If you now alter "sofus" to "terry" then tblOne will STILL be related to tblTwo but now have the name = "terry"

So you dont have to change anything, or am I missing something?
Avatar billede -sofus- Nybegynder
17. marts 2003 - 21:53 #14
Yes I know that, but when you need to write a lot of data into you database, It would be alot faster to have a dropdownbox in table one where you could chose "YourName" and if I Chose "Sofus" then it would type FID "1" in tblone.

Right now I have changed it so I have:

tblOne: | ID: "1"(auto) | crap: "blah blah"(text)| FID: "Sofus"( combobox) |
tblTwo: | ID: "1"(auto) | YourName: "Sofus"(text)|

But then the problem is that if I change the name in tblTwo then I have to change it manualy in tblOne
Avatar billede terry Ekspert
17. marts 2003 - 22:05 #15
sofus> IF you use the method I have mentioned  17/03-2003 18:42:28 then this
is EXACTLY what it does (and if I Chose "Sofus" then it would type FID "1" in tblone.)
The combo shows "sofus" but it PUTS 1 in tblOne
Avatar billede -sofus- Nybegynder
17. marts 2003 - 22:07 #16
I did follow your method 18:42:28 but if I change a value in table2 then I have to change it manualy in table1
Avatar billede nih Novice
17. marts 2003 - 23:49 #17
Sofus -> i tblone - designvisning - fid
i bunden er der to fane blade den sidste 'opslag' her vælger du 'Kombinationsboks'
under rækkekilde skriver/vælger du tbltwo
antal kolonner sættes = 2
kollone bredde sættes = 0;2    (derved skjules ID kollonen fra tbltwo)

Held og lykke Niels
Avatar billede nih Novice
17. marts 2003 - 23:53 #18
Desuden SKAL FID i tblOne være af typen langt heltal og IKKE en tekst -
det er måske her kæden springer af
Avatar billede -sofus- Nybegynder
18. marts 2003 - 00:57 #19
Jeg kunne ikke få det til at virke det som skriver men
jeg har lige lavet en minidatabase som passer til det eksempel

http://www.aspcoders.dk/db1.zip

Kan du prøve at ændre databasen, så jeg kan i table1 vælge "yourname" og få den til at skrive "id"

Altså så det er værdien "yourname" man vælger men det skriver værdien "id" i tabel1 ? da det er en del lettere at huske navne end tal hvis der kommer mange ?
Avatar billede -sofus- Nybegynder
18. marts 2003 - 01:59 #20
Ahhh nu er jeg med.

nih smid et svar så for du point.
Avatar billede terry Ekspert
18. marts 2003 - 09:11 #21
.
Avatar billede nih Novice
18. marts 2003 - 09:42 #22
jeg vil ikke have nogen - har rigeligt.

Desuden har jeg bare uddybet Mugs og Terry´s indlæg.

Niels
Avatar billede -sofus- Nybegynder
18. marts 2003 - 17:07 #23
Jammen tak for hjælpen.
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