listbox med dataadgang
Hej,Jeg sidder med er STORT problem jeg nok må erkende at jeg ikke kan løse uden lidt hjælp fra eksperten.dk.
For at I forstår mit spørgsmål rigtigt bliver jeg nok nødt til at komme med lidt baggrundsforklaring først. Mit program skal kunne udvælge tabeller og felter fra en stor access-database, det er der sådan set styr på. Når min form loader har jeg i alt tre listboxe hvor den første (lad os kalde den \"lstTabel\") med det samme viser alle navnene på alle tabellerne i i basen. Klikkes der på et navn på listen vises alle felterne i den valgte tabel i listbox nr. 2 (lad os kalde den lstValgtTabel) I lstValgtTabel kan man nu vælge hvilke felter der skal overføres via en kommando knap til den sidste listbox (lstValgtFelter). Når man så har valgt de felter man vil have klikker man igen på en kommandoknap der gemmer tabelnavn og hver enkelt feltnavn i en tabel i access databasen (tblWebupload). Alt dette er der styr på!
Problemet er at når jeg klikker på en tabel i lstTabel så skal lstFelter vise de felter der ikke er valgt og lstValgtFelter skal selvfølgelig vise dem der ER valgt! Jeg kan godt få lstValgtFelter til at vise dem der er valgt og altså ligger i tblWebupload-tabellen, men jeg kan ikke komme uden om at alle felterne i den valgte tabel bliver vist i lstFelter...
Lidt af min kode:
Private Sub lstTabel_Click()
Dim tdf As TableDef
Dim fld As Field
Dim recSelected As Recordset
Dim strSQL As String
txtValgtTabel.Text = lstTabel.Text
lstValgtFelter.Clear
strSQL = \"SELECT * FROM tblWebupload WHERE Tabel = \'\" & txtValgtTabel.Text & \"\'\"
Set recSelected = datdb.OpenRecordset(strSQL)
Do While Not recSelected.EOF
lstValgtFelter.AddItem recSelected(\"Felt\")
recSelected.MoveNext
Loop
Set tdf = datdb.TableDefs(txtValgtTabel.Text)
lstFelter.Clear
For Each fld In tdf.Fields
lstFelter.AddItem fld.Name
Next fld
End Sub
Ovenstående er altså den kode der afspilles når der klikkes på et tabelnavn i lstTabel.
Skal der flere point til kommer der også det!
