[Access] Filter op basis van list box?

Pagina: 1
Acties:

  • Dentist
  • Registratie: December 2000
  • Laatst online: 23:26

Dentist

Next patient please...

Topicstarter
Ik krijg het niet voor mekaar.. Ik heb een listbox op basis waarop ik een report-filter wil instellen. Nu gaat het prima als ik de mogelijkheid tot 'multiple selection' uitzet, maar dat is nou juist de reden dat ik dat ding heb! Ik wil een multiple selection maken!

Weet iemand hoe ik op basis van een listbox met multiple selection een aantal records binnen een report kan filteren? De volgende twee zaken werken beiden niet in de filter-regel (ze werken misschien wel, maar leveren geen resultaat op) :

[ID] = [Forms]![formname]![listboxname]

[ID] in ([Forms]![formname]![listboxname])


Verder, als ik de multiple-selection-optie uitzet en een msgbox open met daarin de waarde [Forms]![formname]![listboxname], dan geeft ie die goed weer. Als ik de optie weer aanzet, dan is de waarde leeg.

Iemand een idee wat ik over het hoofd zie?

  • Dentist
  • Registratie: December 2000
  • Laatst online: 23:26

Dentist

Next patient please...

Topicstarter
Nevermind.. Heb inmiddels een query gemaakt aan de hand van VB en daarmee open ik het formulier.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Dim stDocName As String
Dim strFilter As String
Dim varItem As Variant

 For Each varItem In Forms!formuliernaam!Listbox.ItemsSelected
   strFilter = strFilter & "[ID] = " & _
       Forms!formuliernaam!ListBox.ItemData(varItem) & " OR "
 Next 

 If strFilter <> "" Then
    strFilter = Left(strFilter, Len(strFilter) - 4)
  Else
    MsgBox "Geen waarden geselecteerd!"
    [Speler].SetFocus
    Exit Sub
 End If

 stDocName = "reportname"
 DoCmd.OpenReport stDocName, acPreview, , strFilter