Damit du den Code nur einmal schreiben oder anpassen musst, würde ich die Filterfunktion in eine eigene Prozedur auslagern. Der Aufruf erfolgt dann jeweils über das onClick-Ereignis der entsprechenden Liste.
Code vb:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
| Private Sub Liste_Stadt_onClick ()
'Aufruf der gemeinsamen Filterfunktion
DB_Filter
End Sub
Private Sub Liste_Nummer_onClick ()
'Aufruf der gemeinsamen Filterfunktion
DB_Filter
End Sub
Sub DB_Filter ()
Dim flt As String
flt = ""
If Liste_Stadt.Value <> "Alle" Then
flt = "stadt = " & Liste_Stadt.Value
End If
If Liste_Nummer.Value <> "Alle" And flt = "" Then
flt = "nummer = " & Liste_Nummer.Value
ElseIf Liste_Nummer.Value <> "Alle" And flt <> "" Then
flt = flt & " AND nummer = " & Liste_Nummer.Value
End If
If flt <> "" Then
Me.Filter = flt
Me.FilterOn = True
Else
Me.FilterOn = False
End If
End Sub |
Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.
Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.