Nur datensätze anzeigen, die auch dem Inhalt desKo

Hallo,

Ich habe eine Tabelle mit Bewegungsdaten - darunter auch die Spalte „Mitarbeiter“

wenn ich nun ein Kombinationsfeld in das zugehörige Formular einfüge mit dem ich eine Abfrage starte, dann generiert er immer den Code

Private Sub Kombinationsfeld34_AfterUpdate()
’ Den mit dem Steuerelement übereinstimmenden Datensatz suchen.
Dim rs As Object

'Set rs = Me.Recordset.Clone
‚rs.FindFirst „[Mitarbeiter] = '“ & Me![Kombinationsfeld34] & "‘"
'If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub

und in der Tabelle ist der Cursor eben dort wo er den ersten Wert findet. (und dazwischen sind noch andere

Wie kann ich alle datensätze herausfiltern, in denen der ausgewählte Mitarbeiter vorkommt, ohne, dass dazwischen Datensätze von andren Mitarbeitern stehen

danke für Eure Hilfe

Gruß aus Wien

Sabrina

Hallo Sabrina,

Private Sub Kombinationsfeld34_AfterUpdate()
Dim rs As Object

'Set rs = Me.Recordset.Clone
‚rs.FindFirst „[Mitarbeiter] = '“ & Me![Kombinationsfeld34] &
"‘"
'If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End Sub

Wie kann ich alle datensätze herausfiltern, in denen der
ausgewählte Mitarbeiter vorkommt, ohne, dass dazwischen
Datensätze von andren Mitarbeitern stehen

du hast dir soeben selbst die Antwort gegeben: du benötigst einen FILTER und keine Suchfunktion.

Private Sub Kombinationsfeld34_AfterUpdate()

Me.Filter= „[Mitarbeiter] = '“ & Me![Kombinationsfeld34] & „’“
Me.FilterOn= True

End Sub

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)

danke danke danke!

und jetzt hätt i no was und zwar wie mach ich das wenn ich 2 filter einbinden möchte ! also nach mitarbeiter und nach dem arbeitspaket gleichzeitig filtern möchte!

danke für deine hilfe, bin jetzt mal ur glücklich dass das funktioniert hat !

lg sabrina

Moin, Wolfgang,

ich setze dazu ich die RowSource mit „Select … from … Where …“, das sieht ein wenig umständlich aus, deshalb habe ich

Private Sub BLZ_After_Update()

Me.Filter= "[Mitarbeiter] = " & Me![BLZ]
Me.FilterOn= True

End Sub

sofort ausprobiert. Effekt: keine Wirkung. Was mache ich falsch?

Gruß Ralf

Hallo Sabrina,

und jetzt hätt i no was und zwar wie mach ich das wenn ich 2
filter einbinden möchte ! also nach mitarbeiter und nach dem
arbeitspaket gleichzeitig filtern möchte!

erweitere einfach den Filter um die zweite Bedingung:

Private Sub Kombinationsfeld34_AfterUpdate()
Dim Filter1, Filter2

Filter1 = „[Mitarbeiter] = '“ & Me![Kombinationsfeld34] & „’“
Filter2 = „[Arbeitspaket] = '“ & Me![deinEingabefeld] & „’“

Me.Filter= Filter1 & " and " & Filter2
Me.FilterOn= True

End Sub

Beachte das Leerzeichen vor und hinter dem AND!

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)

Moin Ralf,

Private Sub BLZ_After_Update()

Me.Filter= "[Mitarbeiter] = " & Me![BLZ]
Me.FilterOn= True

End Sub

sofort ausprobiert. Effekt: keine Wirkung. Was mache ich
falsch?

*LOL* deine Mitarbeiter haben aber komische Namen…
Meine heißen Müller, Schulze usw.,
deine BLZ Sparkasse, BLZ Commerzbank usw.!!

vergleicht du Äpfel mit Birnen?
Äpfel = Feldtyp Text
Birnen = Feldtyp Zahl

Beispiel Äpfel (Text):
Me.Filter= „[BLZ] = '“ & Me![BLZ] & „’“
(zusätzliche Anführungszeichen umschließen die Variable z.B. ‚X‘)

Beispiel Birnen (Zahl):
Me.Filter= "[BLZ] = " & Me![BLZ]

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)

Moin, Wolfgang,

vergleicht du Äpfel mit Birnen?

leider nein:

Me.Filter= "[Mitarbeiter] [BLZ] = " & Me![BLZ]

BLZ ist numerisch, der Vergleich mit einem String führt zur berüchtigten Fehlermeldung „2001 Sie haben die vorherige Operation abgebrochen“.

Gruß Ralf

Hallo Ralf,

Me.Filter= "[Mitarbeiter] [BLZ] = " & Me![BLZ]

du nutzt als Such/Filterinformation ein Feld der Tabelle = BLZ

Erstelle ein unabhängiges Feld, z.B. BLZSUCHE und setze dann den Filter :

Me.Filter= "[BLZ] = " & Me![BLZSUCHE]

und nicht vergessen:
Me.FilterON = True

Grüße aus Schönberg (Lübeck)
Wolfgang
(Netwolf)