Hallo Helfer,
möchte einen Filter im Endlos-Formular mit folgenden Bedingungen per Button starten.
Die betreffende Spalte ist mit ,,PersonN" benannt.
In dieser Spalte sind zahlreiche Personen (Nachname) aufgeführt.
Nun möchte ich aus dieser Spalte drei Personen filtern; z.B. mit dem Nachname: Schluge, Orania und Steffen.
Kann mir jemand dafür einen VBA-Code aufzeigen.
Im Voraus besten Dank.
Gruß
Bollisan
Hallo Bollisan,
Private Sub DeinButton_Click()
Me.Filter = "PersonN IN ('Schluge', 'Orania', 'Steffen')"
Me.FilterOn = True
End Sub
hth
gruss ekkehard
also so statisch würd ich das nicht machen...
Angenommen in deinem Form hast du ein Listfeld mit Mehrfachselektions Möglichkeit, dann würde ich eher etwas in diese Richtung vorschlagen.
Sub deinButton_Click()
For Each itm In Me!PersonenListfeld.ItemsSelected
PersonenFilter = PersonenFilter & "," & Me!PersonenListfeld.Column(0, itm)
Next
If Len(PersonenFilter) > 0 Then
PersonenFilter = Mid(PersonenFilter , 2)
Me.Filter = "PersonN in (" & PersonenFilter & ")"
Me.FilterOn = True
Else
MsgBox "Keine Person ausgewählt"
End If
End Sub
Hallo,
wenn, denn:
PersonenFilter = PersonenFilter & ",'" & Me!PersonenListfeld.Column(0, itm) & "'"
Franz, du hast natürlich vollkommen Recht.
Ich hatte keine Hochkommas verwendet, da bei mir die Tabellen Autowert Spalten haben und diese ja die Key's in den Listboxen sein sollten..
Hallo,
@Franz
Stört da das Koma am Anfang nicht?
@all
Und es stellt sich die Frage ob Column(0)
die richtige Spalte ist. Ich würde da eher die KundenNr
als den Namen vermuten. Und dann, unter der Voraus-
setzung, dass diese K-Nummer auch eine Zahl ist, sollte
Halwins Code auch funzen.
gruss ekkehard
Das führende komma nimmst du am Ende wieder weg mit der Funktion Mid(PersonenFilter , 2).
Auch die Frage die Frage zur Column ist natürlich berechtigt. Ich habe einfach wieder nicht erklärt unter welchen Bedingungen das gilt *shame on me*
Der Codesnipsel geht natürlich davon aus, dass Spalte 0 der Primary key ist und in diesem Fall muss er nummerisch sein. Mit Franz's Hinweis gilt er dann für reine Text Felder.
Hallo Hawin,
Zitat*shame on me*
Dito, die Zeile mit dem Komma hab' gar nicht gesehen,
war so auf die Schleife fixiert.
gruss ekkehard