keuzelijst met meerdere kolommen

Status
Niet open voor verdere reacties.

anlag1

Gebruiker
Lid geworden
31 okt 2010
Berichten
144
Hallo allemaal,

Ik probeer met onderstaande code 2 kolommen in een keuzelijst zichtbaar te krijgen, loop echter vast op de tweede
regel in do while loop, er zou een object vereist zijn, maar ik weet niet welke? kan iemand me helpen?

Code:
Private Sub cmdDel8s_Click()

Dim dbs As DAO.Database
Dim rst As DAO.Recordset
Dim strSQL As String
Dim ctrlDst As Control
Set ctrlDst = Me.cboStc8s
cboStc8s.BoundColumn = 1
cboStc8s.ColumnCount = 2

Set dbs = CurrentDb

strSQL = "Select STC8s, STC8sDESCR1 FROM tbl_sticker8s;"
Set rst = dbs.OpenRecordset(strSQL)

Do While Not rst.EOF
ctrlDst.AddItem rst("STC8s")
ctrlDst.Column(1, ctrlDst.ListCount - 1) = rst("STC8sDESCR1")
rst.MoveNext
Loop
Code:
 
Ingewikkeld, ingewikkeld....
Code:
Do While Not rst.EOF
        ctrlDst.AddItem rst("STC8s") & ";" & rst("STC8sDESCR1")
    rst.MoveNext
Loop
 
Michel,
Nu wil ik in hetzelfde keuzevak een rij selecteren en beide velden eruit destilleren om deze elders weer te gebruiken.
Als ik de ctrlDst.Rowsource kijk zie ik een lange string waarvan elk veld gescheiden wordt door een ";"
Is het nu zo dat de geselecteerde rij hier uit "gevist" moet worden of is er een methode die eenvoudiger is?
Gr.
André
 
Nee, dat hoeft niet. Een keuzelijst kun je met de Items property weer uitlezen.
 
Michel,
Werkt prima, heb het opgelost met onderstaande code:

Code:
Dim a As Integer
Dim ctrlDst As Control
    Set ctrlDst = [Forms]![frm_sticker8*]![cboStc8s]
        a = ctrlDst.ItemsSelected.Item(0)
        txtStc8s = ctrlDst.ItemData(a)
        txtstc8sdescr = ctrlDst.Column(1, a)

nu wil ik de stringvariable [txtstc8sdescr] bewerken en weer terugplaatsen in de combobox op dezelfde plaats,
kun je me een hint geven hoe dat is op te lossen?
thnx
André
 
Je kunt een item in een keuzelijst die is gebaseerd op Waarden volgens mij niet bewerken; je zult de aangepaste lijst denk ik opnieuw moeten inlezen. En die techniek heb je nu werkend :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan