collapse

* Benutzer Info

 
 
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

* Wer ist Online

  • Punkt Gäste: 76
  • Punkt Versteckte: 0
  • Punkt Mitglieder: 2
  • Punkt Benutzer Online:

* Forenstatistik

  • stats Mitglieder insgesamt: 13810
  • stats Beiträge insgesamt: 64297
  • stats Themen insgesamt: 8694
  • stats Kategorien insgesamt: 5
  • stats Boards insgesamt: 16
  • stats Am meisten online: 415

Autor Thema: Listenfeld soll nach zwei Feldern filtern  (Gelesen 198 mal)

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 197
Listenfeld soll nach zwei Feldern filtern
« am: Oktober 26, 2017, 10:04:18 »
Listenfeld

Kann man ein Listenfeld so mit VBA konfigurieren, dass es Datensätze so filtert, dass zwei Felder abgefragt werden.

Zum Beispiel, dass alle DS angezeigt werden, die in [Text1] oder in [Text2] den Wert zeigen, den das Listenfeld markiert hat?

Carl
 

Offline Lachtaube

  • Access-Meister
  • ***
  • Beiträge: 955
Re: Listenfeld soll nach zwei Feldern filtern
« Antwort #1 am: Oktober 26, 2017, 11:20:00 »
Man kann.
Grüße von der (⌒▽⌒)
 

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 197
Re: Listenfeld soll nach zwei Feldern filtern
« Antwort #2 am: Oktober 27, 2017, 23:56:28 »
Also um nach einem Feld zu filtern mache ich es immer so:

Private Sub Einfeldfilter_AfterUpdate()
     With Me!UFfrmworkorderUFO.Form
         .Filter = "Erstesfeld = " & Me!Einfeldfilter & ""
         .FilterOn = True
     End With
End Sub


Das hingegen funktioniert nicht, weil der zweite Filter den ersten überschreibt.

Private Sub Zweifeldfilter_AfterUpdate()
     With Me!UFfrmworkorderUFO.Form
         .Filter = "Erstesfeld = " & Me!Zweifeldfilter & ""
         .Filter = "Zweitesfeld = " & Me!Zweifeldfilter & ""
.FilterOn = True
     End With
End Sub


Was muss man tun, um DS anzuzeigen, die den Wert im ersten ODER im zweiten haben?

 

Offline Carl

  • Access-Profi
  • **
  • Beiträge: 197
Re: Listenfeld soll nach zwei Feldern filtern
« Antwort #3 am: Oktober 28, 2017, 00:13:50 »
okay, ich habs hin bekommen mit:

Private Sub Zweifeldfilter_AfterUpdate()
     With Me!UFfrmworkorderUFO.Form
         .Filter = "Erstesfeld = " & Me!Zweifeldfilter & ""  & _
         "OR Zweitesfeld = " & Me!Me!Zweifeldfilter & ""
         .FilterOn = True
     End With


Ich verstehe nicht, was der Ausdruck  & _ bedeutet.

Carl


 

Offline MzKlMu

  • Moderator
  • Access-Oberguru
  • *****
  • Beiträge: 7030
Re: Listenfeld soll nach zwei Feldern filtern
« Antwort #4 am: Oktober 28, 2017, 07:19:13 »
Hallo,
das &_ ist nur ein Zeilenumbruch im VBA Editor den man einfügt, wenn die Zeile zu lang wird. Ist bei dem gezeigten Code nicht unbedingt notwendig. Außerdem sind die beiden Leerstrings überflüssig.
     With Me!UFfrmworkorderUFO.Form
         .Filter = "Erstesfeld = " & Me!Zweifeldfilter & " OR Zweitesfeld = " &  Me!Zweifeldfilter
         .FilterOn = True
     End With
Das funktioniert aber nur bei Zahlen so, Texte erfordern zusätzliche Hochkomma.
Gruß
Klaus