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?
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 SubFeld1 - 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
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
Da hat dann ja wenigstens einer alle Infos zur Fragestellung bekommen.
;)