Hallo,
kann ich in einem Listenfeld mit Mehrfachauswahl die jeweilig angeklickten Datensätze in der hinter diesem Listenfeld liegenden Abfrage im Feld "Auswahl" mit "-1" also True kennzeichnen? Irgenwie kriege ich das nicht hin. (z.B. ME.[Basis_Listenauswahl].[Auswahl] = "-1") Es kommen ständig Fehlermeldungen.
Beste Grüße
Frank
Hallo,
versteh ich nicht... ein Listenfeld ist nicht editierbar. Und warum willst Du das Feld in der Abfrage "kennzeichnen"?
Hallo Frank,
Zugriff auf die ausgewählten Listeneinträge erhältst Du über die
Eigenschaft .ItemsSelected des Listenfeldes.
hth
gruss von ekkehard aus dem sonnigen London
Hallo Franz, hallo Ekkehard,
da hab ich mich wieder laienhaft ausgedrückt.
In meinem Listenfeld kann ich einen angeklickten Wert mit folgenden Code mit -1 kennzeichnen: Sub einzelwertauswahl_Click(listctrlname As String)
Dim i As Long
Dim rs_auswahltab As DAO.Recordset
Set rs_auswahltab = MykIS_Database.OpenRecordset(auswahltab, dbOpenDynaset)
For i = 0 To Me.Controls(listctrlname).ListCount - 1
If Me.Controls(listctrlname).Selected(i) = True Then
If Me.Controls(listctrlname).Column(0, i) <> Me!wuchsstelle_id Then
rs_auswahltab.FindFirst "id = '" & Me.Controls(listctrlname).Column(0, i) & "'"
If rs_auswahltab.NoMatch = False Then
rs_auswahltab.Edit
rs_auswahltab.update
Exit For
End If
End If
End If
Next
rs_auswahltab.Close
qListe.Requery
zListe.Requery
End Sub
Ich möchte aber mehrere Begriffe des Listenfeldes anklicken und dann diesen Code ausführen. Es wird aber nur der erste ausgewählte Begriff des Listenfeldes verarbeitet.
Bei VBA-Programmierung bin ich eher unbeholfen und der Code stammt nicht von mir.
Frank
Hallo,
durch "learning by doing" habe ich jetzt erst mal eine Lösung gefunden, die für mich akzeptabel ist. Ich löse die Ereignisprozedur direkt im Listenfeld durch einfachen Klick aus. Das geht schnell genug. :)
@Franz: die Kennzeichnung mit -1 dient der Pflege von Referenzlisten, wo gleiche Begriffe mit unterschiedlicher Schreibweise in einer weiteren Prozedur vereinigt werden.
Beste Grüße
Frank
Hallo Frank,
Wie gesagt, schleife durch die .ItemsSelected statt durch die ganze
Liste, und schreibe auch zwischen diese beiden Zeilen
rs_auswahltab.Edit
rs_auswahltab.update
eine Zeile mit der gewünschten Änderung. Ansonsten machen die
keinen Sinn.
gruss ekkehard