Hallo zs,
ich habe ein Listfeld erstellt als WertListe und befülle Sie mit AddItem:
sqlString = "SELECT Bestand.Name, Bestand.Status, Bestand.Status_Reason, Bestand.Floor....."
' SQL String gekürzt
On Error GoTo ErrorNotes
Set rs = db.OpenRecordset(sqlString)
On Error GoTo 0
If rs.RecordCount > 0 Then
Dim i As Long
' laufende Nummer hinzufügen
ListItem = i + 1 & ";"
' Loopen durch den Recordset des SQL-Ergebnisses
For i = 0 To rs.Fields.Count - 1
'Listitem befüllen
ListItem = ListItem & rs.Fields(i) & ";"
Next
LstScanData.AddItem ListItem
End If
Das funktioniert soweit.
Nun möchte ich beim verlassen des Formulars oder beim Klicken eines Buttons das diese Listbox gelöscht wird. Dafür habe ich eine Funktion erstellt:
Private Function clearListBox()
Dim i As Long
Me.LstScanData.Value = ""
For i = LstScanData.ListCount - 1 To 0 Step -1
Me.LstScanData.RemoveItem Index:=i
Me.LstScanData.Requery
Next
'Verzweiflungstat:
Me.LstScanData.RowSource = vbEmpty
End Function
Jedes mal wenn ich dann wieder Neu in das Formular gehe, sind die alten Datensätze wieder da.
Jetzt könnte ich natürlich jedes Mal die Clear-Funktion aufrufen, das ist aber nicht Sinn der Sache.
Was mache ich falsch?
Hallo!
Wenn du das Formular im Entwurfmodus öffnest, sind dann in der Eigenschaft "RowSource" Werte eingetragen?
Gruß
Josef
Hi,
oh man tatsächlich, hundertmal auf die Eigenschaften von der Listbox geschaut und die blöde Rowsource nicht gesehen.
Danke für die Kopfnuss ;D