Jeg har en access database og jeg har hentet dataene, men jeg kan ikke få en hel liste ind i en combobox. Hvis jeg henter "navn" i min tabel, får jeg kun det øverste navn med i min combobox, der vil jeg have alle de navne der er.
Private Sub Form_Load() Set Combo1.DataSource = Data1 Do While Data1.Recordset.EOF = False Combo1.AddItem = Data1.Recordset("navn") Data1.Recordset.MoveNext Loop End Sub
Det er det jeg har Jeg har addet en Data Kontrol der er hidden, for at åbne til DB'en
Private Sub Form_Load() Set Combo1.DataSource = Data1 Data1.Recordser.MoveFirst Do While Data1.Recordset.EOF = False Combo1.AddItem = Data1.Recordset("navn") Data1.Recordset.MoveNext Loop End Sub
Ikke en stor ændring, og ved heller ikke om det virker, da jeg ikke lige har mulighed for at afprøve det !
Hvis du vil, så prøv at sende dit VB projekt, så skal jeg da gerne finde ud af hvad der er galt med det. Jeg programmerer selv meget i VB. Min email add er thomas@tdaugaard.dk
<< snowball >>
"Data1.Recordser.MoveFirst" skulle vist ha været "Data1.Recordset.MoveFirst" ..
Ja ovennævnte kode kræver at du får dimmensioneret et recordset. jeg ved ikke hvordan man får fat i recordsettet fra en datakontrol. Jeg plejer at bruge DAO, men ADO er vist det man bør bruge. Men som skrevet så er det altså muligt at fylde en DataCombo automatisk med data fra en datacontrol. Brug "Microsoft ADO datacontrol 6.0 (OLEDB)" sammen med "Microsoft datalist controls (OLEDB)"
Man kan tilføje disse kontroller ved at højreklikke på toolboxen, vælge "components" og finde dem på listen over controls.
SelectPosition = "SELECT DISTINCT Position FROM Spillerdatabase" Select="Select Distinct navn form DinDatabase" Set Data1.Recordset = db.OpenRecordset(Select) Data1.Recordset.MoveFirst While Not Data3.Recordset.EOF NavnetPåComboen.AddItem Data1.Recordset.Fields("navn") Data1.Recordset.MoveNext Wend
Hejsa..det har virker, selvfølgelig når du retter det til. Tager en af hvert navn.
Jeg ved ikke hvem det er det lige nøjagtigt skal have pointene :O)))
Stykkede lidt sammen her og der og fik følgende :
Private Sub Form_Load() Dim ws As Workspace Dim db As Database Dim rs As Recordset
Set ws = Workspaces(0) Set db = ws.opendatabase(App.Path & "\adressebog.mdb") Set rs = db.OpenRecordset("SELECT * FROM adressebog") If Not rs.EOF Then rs.movefirst Do While Not rs.EOF Combo1.AddItem rs!Navn rs.MoveNext Loop End If End Sub
Bare acceptér alle svar så pointsne bliver delt ligeligt. Det er vist på tide at få lukket ?'et.
Synes godt om
Ny brugerNybegynder
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.