PDA

Vollständige Version anzeigen : Listenfeld


tg0042
08.05.2004, 09:09
Habe ein Listenfeld, welches Datensätze einer Abfrage anzeigt.

Diese Abfrage "filtert" Daten, die mit einer ja/nein eigenschaft als ja makiert sind.

Wenn ich jetzt im Formular einen Datensatz auf "ja" setze, hätte ich gerne, dass dies auch gleich im Listenfeld angezeigt wird.


Kann mir jemand sagen, wie ich das machen muss.

Gruß und Danke,

tg

Johnny Loser
08.05.2004, 09:15
Eine ListBox besitzt die Eigenschaft .RowSource (Datenherkunft).
Diese wird beim Erstellen der ListBox auf dem Form abgefragt.
Änderungen der Datensätze in der Datenherkunft werden erst dann in der ListBox angezeigt, wenn Du die Daten neu abfragst.
Dies erreichst Du entweder durch die Methode .Requery oder durch das Zuweisen einer neuen Datenherkunft.

'Aktualisieren der ListBox
Me!ListBox.Requery

'oder neue Datenherkunft zuweisen
Me!ListBox.RowSource = "SELECT Feld FROM Tabelle"

TommyK
08.05.2004, 09:17
Hallo,

dann schreib in das Ereignis "Nach Aktualsierung"

Private Sub Kontrollkästchen_AfterUpdate()
Me!DeinListenfeld.Requery
End Sub

Wobei Du "DeinListenfeld" durch die Bezeichnung Deines Lisenfeldes ersetzen musst.

tg0042
08.05.2004, 09:21
Funktioniert.

Dankeschön !

Johnny Loser
08.05.2004, 09:23
@Tommy

Dein Beispiel hat einen kleinen Haken, solange nur der Wert der Checkbox geändert wird, ändert sich der Wert in der zugrundeliegenden Tabelle nicht. Hierfür wäre ein Speichern des gesamten Datensatzes notwendig.

TommyK
08.05.2004, 10:10
@ Johnny

jaja, ist eben Wochenende, da ist man nicht so fit im Kopf. :D :D :D