Neuigkeiten:

Wenn ihr euch für eine gute Antwort bedanken möchtet, im entsprechenden Posting einfach den Knopf "sag Danke" drücken!

Mobiles Hauptmenü

Filtern von Endlosformular über ein Listenfeld

Begonnen von Arndt, Mai 10, 2016, 12:20:19

⏪ vorheriges - nächstes ⏩

Arndt

Ich habe schon viel im Netz gesucht, verstehe die Syntax aber noch zu schlecht. Darf ich mal um Vorschläge bitten?

Gegeben:
Ein Formular [Logbuch] enthält ein Ufo, dass das Endlosformular [Logbuch-Zeitplanung] angezeigt. Dieses Basiert auf der Tabelle [t-teilnehmer].

Tabelle [t-teilnehmer] enthält ca. 50 Felder, eines davon heißt [massnahmedurchgaenge], das 10 verschiedene Werte annehmen kann. Diese Werte stammen aus einer [wertetabelle].

Aufgabe:
Im Formular [Logbuch] befindet sich ein ungebundenes Listenfeld. In diesem Listenfeld sollen diese 10 verschiedenen Werte angezeigt werden. Bei klick auf einen dieser Werte sollen nur die Datensätze angezeigt werden, die diesen Wert aufweisen.

Was muss ich da als Ereignisprozedur angeben?


Beaker s.a.

Hallo Arndt,
Schwierig mit so wenig Infos.
Zitatein Ufo, dass das Endlosformular [Logbuch-Zeitplanung] angezeigt. Dieses Basiert auf der Tabelle [t-teilnehmer].
Hört sich erstmal unlogisch an, kann ich aber nicht beurteilen.
Zitat
Tabelle [t-teilnehmer] enthält ca. 50 Felder
Hört sich nach suboptimalem Datenmodell an, kann ich aber auch
nicht beurteilen.
Ansonsten, (Luftcode)
Private Sub DeinListfeld_Click()
    Dim strSQL as String

    strSQL = _
          "SELECT T.Feld1, T.Feld2, ..., T.Feldn " _
       & "FROM t-Teilnehmer AS T " _
       & "WHERE T.massnahmedurchgaenge = " & Me!DeinListfeld.Value

    Me!NameDesUFos.Form.RowSource = strSQL

End Sub

Feld1 - Feldn sind die Felder, die im UFo angezeigt werden
Der Vergleichswert muss die gebundene Spalte des Listfeldes sein.
Falls dass nicht geht oder nicht gewünscht wird, musst Du statt
auf .Value auf die .Column(n) des Listfeldes zugreifen
& "WHERE T.massnahmedurchgaenge = " & Me!DeinListfeld.Column(n) (erste Spalte = 0).

hth
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

DF6GL

#2
Hallo,

zur Info:
habe dieses Problem nach Anfrage schon per Email bearbeitet...

Datensatzherkunft des Listenfeldes: 
SELECT DISTINCT [t-massnahmedurchgaenge].Maßnahmedurchgang FROM [t-massnahmedurchgaenge] ORDER BY [t-massnahmedurchgaenge].Maßnahmedurchgang DESC;


Ereignisprozedur des Listenfeldes:

Private Sub Liste87_Click()
    Me![Logbuch-Zeitplanung].Form.Filter = "[maßnahmedurchgang] = '" & Me!Liste87.Column(0) & "'"
    Me![Logbuch-Zeitplanung].Form.FilterOn = True
    Me![Logbuch-System].Form.Filter = "[maßnahmedurchgang] = '" & Me!Liste87.Column(0) & "'"
    Me![Logbuch-System].Form.FilterOn = True
    Me![Logbuch-Fragestellung].Form.Filter = "[maßnahmedurchgang] = '" & Me!Liste87.Column(0) & "'"
    Me![Logbuch-Fragestellung].Form.FilterOn = True
    Me![Logbuch-Aktuellerstand].Form.Filter = "[maßnahmedurchgang] = '" & Me!Liste87.Column(0) & "'"
    Me![Logbuch-Aktuellerstand].Form.FilterOn = True
    Me![Untergeordnet46].Form.Filter = "[maßnahmedurchgang] = '" & Me!Liste87.Column(0) & "'"
    Me![Untergeordnet46].Form.FilterOn = True
End Sub

Viele Grüße vom Bodensee
Franz, DF6GL

Hilfestellung:  http://www.access-o-mania.de/forum/index.php?topic=6969.msg118738#msg118738

Links und Tipps:
1.   http://v.hdm-stuttgart.de/~riekert/lehre/db-kelz/
1a. http://www.tinohempel.de/info/info/datenbank/normalisierung.htm
1b. https://support.office.com/de-de/article/Grundlagen-des-Datenbankentwurfs-eb2159cf-1e30-401a-8084-bd4f9c9ca1f5#bmterms
2.   http://www.donkarl.com
3.   https://web.archive.org/web/20201201233522/http://www.dbwiki.net/
4.   http://www.access-tutorial.de/
5.   http://www.tty1.net/smart-questions_de.htm
6.   http://access.joposol.com/accept

Last but not least:   < F1 > für Hilfe
;) Learning by doing not by spoon-feed ;)

Tipp: Find and Replace for Access

Beaker s.a.

Da hat dann ja wenigstens einer alle Infos zur Fragestellung bekommen.
;)
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)