Il senso che più semplice conosca è di sviluppare una funzione che può costruire la vostra stringa del filtro ed allora denomina quella funzione in qualsiasi momento uno dei vostri comandi di test di verifica di ricerca è aggiornato. Per esempio:
Funzione BuildSearch ()
sFilter fioco come stringa
Se "" di Nz (Me.cboDeviceType, "" <> ) allora
sFilter = “DeviceType=„ & Me.cboDeviceType
Concluder se
Se "" di Nz (Me.cboUserName, "" <> ) allora
Se Len (sFilter) > 0 allora sFilter = sFilter & “E„
sFilter = sFilter & “UserName='" & Me.cboUserName & “'„
Concluder se
Me.YourSubformControl.Form.filter = sFilter
Me.YourSubformControl.Form.FilterOn = allineano
Funzione di conclusione
Ora denominare appena quella funzione dai vostri comandi:
Sub il cboDeviceType_AfterUpdate ()
BuildSearch
Sommergibile dell'estremità
Alcune punte:
Le stringhe del filtro sono nient'altro che SQL valido DOVE clausole senza la parola “DOVE„, in modo da dovete seguire le stesse regole:
Accludere i valori del testo nelle citazioni singole o doppie: “il UserName='" & Me.cboUserName & “'„ è circondato dalle singole citazioni
Accludere i valori della data nei contrassegni: “DateLoaned=#„ & Me.txDateLoaned & “#„
Assicurar che vi riferiate correttamente al vostro controllo di Subform. Ciò è il CONTROLLO sulla vostra forma principale che ospita la forma che state usando come subform. Maggio o maggio non essere chiamato lo stessi della forma che state usando come subform (cioè “l'oggetto di fonte„), così state attento quando si riferisce a quel controllo.