# Problem mit Mehrspaltigen Listboxen



## kain0015 (10. Juli 2006)

Hi!
Habe ein Problem mit Mehrspaltigen Listboxen.
Der source sieht im moment so aus:

```
Private Sub Form_Load()
    ListBox1.ColumnCount = 2
    ListBox1.AddItem "test"
    ListBox1.Column(1, ListBox1.ColumnCount - 1) = "test2"
End Sub
```

Und zwar bekomm ich jedes mal beim ListBox1.Column(...) den Fehler "Objekt erforderlich"
Source is zwar kurz aber komme leider nicht auf den Fehler. 

mfg


----------



## mc_gulasch (10. Juli 2006)

Was genau ist denn deine "ListBox1"?

Versuchs doch mal mit

```
ListBox1.Column(1,ListBox1.ColumnCount-1).Value="test2"
```


----------



## kain0015 (11. Juli 2006)

Hi,
meine ListBox is halt ein Listenfeld (so heist in der deutschen version) mit 7 Spalten.
Hab grad deinen Lösungsvorschlag ausprobiert bekomm aber noch immer "Objekt erforderlich"

mfg


----------



## kain0015 (11. Juli 2006)

//Hat sich erledigt

(da es keine edit möglichkeit gibt neuer post)

trotzdem danke für die hilfe 

mfg


----------



## Blaubmania (17. Juli 2006)

Die Lösung wäre mal interessant gewesen bin grad beim selben Problem und keinen schimmer was der von mia will na bischen code noch anbei und lstkunden ist ein Listenfeld bzw. soll es sein 


```
Private Sub txtsucher_GotFocus()
DoCmd.Requery

Dim db As Database
Dim r As Recordset
Dim i As Integer

i = 0

If Len(Me.txtsucher) > 2 Then
    Set db = CurrentDb
    Set r = db.OpenRecordset("Kunde", dbOpenDynaset)
    Me.lstkunden.ColumnCount = 4
    r.FindFirst "Nachname Like '*" & Me.txtsucher & "*'"
    Do While r.NoMatch = False
        Me.lstkunden.Column(0, i) = r![Kunde-ID]
        Me.lstkunden.Column(1, i) = r![Name]
        Me.lstkunden.Column(2, i) = r![Vorname]
        Me.lstkunden.Column(3, i) = r![Gebäude]
        i = i + 1
        r.FindNext "Nachname Like '*" & Me.txtsucher & "*'"
    Loop
End If
End Sub
```


----------



## kain0015 (18. Juli 2006)

Hi!
Nach vielem Probiern hab ich dann einfach jeden Datensatz durch ein ";" getrennt und mit additem eingefügt. Das ganze sieht dann so aus:

```
addStr = rs.Fields(4).Value & ";" & rs.Fields(3).Value & ";" & rs.Fields(7).Value & ";" & rs.Fields(1).Value & ";" & rs.Fields(5).Value & ";" & rs.Fields(6).Value & ";"
tabelle.AddItem addStr
```

mfg


----------



## Blaubmania (18. Juli 2006)

Wofür ist das AddItem notwendig hab den Sinn noch ned ganz verstanden. Eigentlich geb ich doch mit Column an wo er meine werte hinknallen soll oda?! Oder ist das AddItem der eigentliche Befehl zum hinzufügen von Zeilen in eine Listbox?!


----------



## kain0015 (18. Juli 2006)

Es sollte mit Column auch , allerdings hats bei mir net gefunzt deshalb hab ichs mit addItem gemacht.
mfg


----------



## Blaubmania (18. Juli 2006)

Ich kriegs ned gebacken mache ich es mit Column kommt der Fehler "Objekt erwartet" mache ich es mit AddItem findet der die Spalten die ich im Recordset angebe nicht aaaaaaaaahhhhhh krieg gleich nen ...... Ich hab ne Tabelle "Kunde" da steht Kunde-ID / Nachname / Vorname / Gebäude drinne und wieso sagt er mir das er Kunden-ID und Nachname findet aber die anderen 2 nicht ich geh echt kauppt bald 

Oda irgend ne Hilfeseite wo das alles irgendwie beschriben ist von mir aus kanns auch ein Roman sein hab ned mal die Clear Funktion nur RemoveItem nicht mal RemovaeAllItem wie lösche ich denn dann das Listenfeld wieda?! Wäre sehr dankbar wenn jemand bischen zeit hätte und mir was zu schreiben bzw. mir helfen könnte

----------

Ok nach kurzer Besinnung konnte ich das Füllproblem lösen, jetzt bleibt nur noch die Frage wie lerre ich das komplette Listenfeld in VBA Access?!


----------

