Supportnet / Forum / Datenbanken
ListBox Selected Problem
Frage
Hallo Fachleute
In einem Formular stehen alle Daten zu jeweils einem Fahrzeug. Im gleichen Formular gibt es eine Listbox mit allen unseren Fahrzeugen. Wenn ich nun ein KFZ in der Listbox auswähle, erscheint passend dazu der betr. Datensatz im Formular. Wenn ich nun mit der Maus von KFZ zu KFZ scrolle, wär’s natürlich schön, wenn auch die entspr. Zeile in der Listbox markiert würde, also ".Selected = True". Alle Versuche führen bislang nur zu "Update oder Cancel Update ohne AddNew oder Edit". Hat jemand eine Idee, wie man das lösen kann, oder wie ich zumindest die Markierung in der ListBox gleich nach Klicken und Datensatzwechsel wieder entfernen kann?
Gruß
Conny
Antwort 1 von piano
Hallo
Im Formular-Ereignis "beim Anzeigen":
[Code]Private Sub Form_Current()
Me.Listenfeld1 = Me.KFZ_ID
End Sub
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Im Formular-Ereignis "beim Anzeigen":
[Code]Private Sub Form_Current()
Me.Listenfeld1 = Me.KFZ_ID
End Sub
Gruß piano
Es wäre nett, wenn Du ein Feedback abgeben könntest,
ob der Lösungsvorschlag Dein Problem gelöst hat.
Antwort 2 von con-ny
Hallo piano,
Mit deinem Code kann ich sauber von einem KFZ zum nächsten scrollen ohne jede Fehlermeldung. Jetzt habe ich der Listbox folgenden Code unterlegt:
Private Sub lstFahrzeuge _Click()
Me.RecordsetClone.FindFirst "KFZ_ID = " & Me.Listenfeld1
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
Damit wechselt der angezeigte Datensatz zum ausgewählten Fahrzeug. Obwohl die Mehrfachauswahl der Listbox auf "keine" steht, bleiben aber nach jedem Klicken ein paar andere Fahrzeuge markiert. Irdendwie kommen sich die Codes da wohl ins Gehege.
Hast du noch eine gute Idee?
Danke
Conny
Mit deinem Code kann ich sauber von einem KFZ zum nächsten scrollen ohne jede Fehlermeldung. Jetzt habe ich der Listbox folgenden Code unterlegt:
Private Sub lstFahrzeuge _Click()
Me.RecordsetClone.FindFirst "KFZ_ID = " & Me.Listenfeld1
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
Damit wechselt der angezeigte Datensatz zum ausgewählten Fahrzeug. Obwohl die Mehrfachauswahl der Listbox auf "keine" steht, bleiben aber nach jedem Klicken ein paar andere Fahrzeuge markiert. Irdendwie kommen sich die Codes da wohl ins Gehege.
Hast du noch eine gute Idee?
Danke
Conny
Antwort 3 von piano
Hallo
Die Kombination der beiden Statements ist state of the art und muß sich vertragen.
Der vollständige Code eines Beispiels:
Das Problem muss wo anders liegen, kann ich von der Ferne ohne konkreten Daten nicht analysieren.
Gruss piano
Die Kombination der beiden Statements ist state of the art und muß sich vertragen.
Der vollständige Code eines Beispiels:
Private Sub Liste8_AfterUpdate()
Dim rs As Object
Set rs = Me.Recordset.Clone
rs.FindFirst "[Nr] = " & Str(Nz(Me![Liste8], 0))
If Not rs.EOF Then Me.Bookmark = rs.Bookmark
End SubDas Problem muss wo anders liegen, kann ich von der Ferne ohne konkreten Daten nicht analysieren.
Gruss piano
Antwort 4 von con-ny
Hallo piano
jetzt habe ich ein Me.Refresh zugefügt und alles klappt bestens. Herzlichen Dank für deinen Tipp, wär' ich selbst nicht drauf gekommen. Vielleicht sollte ich mir ein neues Access-Buch kaufen.
So fluppt's:
Private Sub lstFahrzeuge _Click()
Me.RecordsetClone.FindFirst "KFZ_ID = " & Me.Listenfeld1
Me.Bookmark = Me.RecordsetClone.Bookmark
Me.Refresh
End Sub
Also, danke nochmal und viele Grüße
Conny
jetzt habe ich ein Me.Refresh zugefügt und alles klappt bestens. Herzlichen Dank für deinen Tipp, wär' ich selbst nicht drauf gekommen. Vielleicht sollte ich mir ein neues Access-Buch kaufen.
So fluppt's:
Private Sub lstFahrzeuge _Click()
Me.RecordsetClone.FindFirst "KFZ_ID = " & Me.Listenfeld1
Me.Bookmark = Me.RecordsetClone.Bookmark
Me.Refresh
End Sub
Also, danke nochmal und viele Grüße
Conny

