Attached is a demo DB in Access 2000 that uses two list boxes. Hope you can open it in Access 2002.
It still used DAO, so if you write your own code, you must make a reference to Microsoft DAO 3.6 Object Library.
The list boxes lstLocation and lstItemClass are populated by text fields "Location" and "Item Class" from table tblLocationItemClass.
The code is contained in the On Click Event of the Retrieve button on the form. When the button is clicked, a query qryDataType is created and run.
I copy the code below in case you can't open the DB in Access 2002.
-------------------------------------
Private Sub cmdRetrieve_Click()
  ' if nothing is selected, display message and exit.
  If Me.lstLocation.ItemsSelected.Count = 0 And _
     Me.lstItemClass.ItemsSelected.Count = 0 Then
    MsgBox "Select location/item class first"
    Exit Sub
  End If
  
  Dim db As DAO.Database
  Dim qDef As DAO.QueryDef
  Dim SQL As String
  Dim sLocation As String
  Dim sItemClass As String
  Dim sCriteria As String
  Dim varItem As Variant
   
  ' build criteria string for selected locations.
  For Each varItem In Me.lstLocation.ItemsSelected
      sLocation = sLocation & ",'" & Me.lstLocation.ItemData(varItem) & "'"
  Next varItem
  sLocation = Mid(sLocation, 2)  ' remove leading comma.
  sLocation = " Location in (" & sLocation & ")"
   
   ' build criteria string for selected item classes.
  For Each varItem In Me.lstItemClass.ItemsSelected
    sItemClass = sItemClass & ",'" & Me.lstItemClass.ItemData(varItem) & "'"
  Next varItem
  sItemClass = Mid(sItemClass, 2)  ' remove leading comma.
  sItemClass = " [Item Class] in (" & sItemClass & ")"
  
  ' build SQL Statement.
  If Me.lstLocation.ItemsSelected.Count > 0 And _
     Me.lstItemClass.ItemsSelected.Count > 0 Then
    sCriteria = sLocation & " AND " & sItemClass
  Else
    sCriteria = IIf(Me.lstLocation.ItemsSelected.Count > 0, sLocation, sItemClass)
  End If
  SQL = " SELECT * " & _
      " FROM tblLocationItemClass " & _
      " WHERE " & sCriteria
  
  Set db = CurrentDb
  
  ' delete query qryDataType if exists.
  On Error Resume Next
  db.QueryDefs.Delete "qryDataType"
  On Error GoTo 0
  
  ' create and run query qryDataType.
  Set qDef = db.CreateQueryDef("qryDataType", SQL)
  
  DoCmd.OpenQuery "qryDataType"
   
End Sub
------------------------------------
Hope it helps.