Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Eigenschaft List kann nicht gesetzt werden

Eigenschaft List kann nicht gesetzt werden
25.01.2005 11:15:50
Mark
Moin
Ich habe trotz intensiver Recherche nirgends eine Lösung für mein Problem gefunden.
Wieso kann die Eigenschaft hier nicht gesetzt werden? Ich möchte eine Zelle (A1) in eine Listbox einfügen...
ListBox2.List(1, 1) = _
Worksheets("Tabelle1").Cells(1, 1).Value
Grüsse
Mark
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eigenschaft List kann nicht gesetzt werden
25.01.2005 11:44:49
Tom
Hi Mark,
beim Neueinfügen eines Listeneintrages kann die List-Eigenschaft nur genommen werden wenn zuvor ein AddItem-Aufruf stattgefunden hat, oder du ein komplettes Array zuweist
Beispiel wenn du die Listbox zeilenweise füllst:

'Eintrag 1:
ListBox.AddItem "Peter"
ListBox.List(0,1) = "Müller"
'Eintrag 2:
ListBox.AddItem "Hans"
ListBox.List(1,1) = "Eichel"
...

oder du füllst zunächst ein Datenfeld mit den ListboxEinträgen und weist diesen Array dann komplett der List-Eigenschaft zu;

Dim a(2,2) As Variant
a(0,0) = "Peter"
a(0,1) = "Müller"
a(1,0) = "Hans"
a(1,1) = "Eichel"
ListBox.List() = a

aber die List-Eigenschaft macht eigentlich nur Sinn bei mehrspaltigen Listenfeldern...
Gruß,
Tom
Anzeige
AW: Eigenschaft List kann nicht gesetzt werden
Mark
Hi Tom
Genau das war es :)
Vielen dank!
Es ist jedoch noch eine andere Frage (zu einem anderen Thema) aufgetaucht:
Wie kann ich es machen, dass beide Autofilter aktiv sind?
Worksheets("List").Range("A2").AutoFilter Field:=1, Criteria1:=(SearchName)
Worksheets("List").Range("B2").AutoFilter Field:=2, Criteria1:=(SearchBrand)
So wird nur der erste Filter genutzt...
Anzeige
AW: Eigenschaft List kann nicht gesetzt werden
25.01.2005 12:47:52
Tom
Hi du,
mit Autofiltern hab ich mich noch nicht weiter befaßt, aber da müßte es doch hier im Archiv einiges geben?
Gruß Tom
AW: Eigenschaft List kann nicht gesetzt werden
Mark
Hey
Es hat ein paar Sachen, aber genau auf diese Frage gibts bisher keine Antwort...
Markus
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Listbox-Eigenschaft in Excel VBA richtig setzen


Schritt-für-Schritt-Anleitung

Um die Eigenschaft einer Listbox in Excel VBA korrekt zu setzen, gehe wie folgt vor:

  1. Listbox hinzufügen: Füge eine Listbox zu deinem Excel-Arbeitsblatt oder UserForm hinzu.
  2. Neuen Eintrag hinzufügen: Verwende die AddItem-Methode, um einen neuen Eintrag hinzuzufügen. Beispiel:
    ListBox.AddItem "Peter"
  3. Werte zuweisen: Um der Listbox Werte zuzuweisen, kannst du die List-Eigenschaft verwenden, nachdem du einen Eintrag hinzugefügt hast:
    ListBox.List(0, 1) = "Müller"
  4. Alternativ ein Array verwenden: Du kannst auch ein Array erstellen und es der Listbox zuweisen:
    Dim a(2, 2) As Variant
    a(0, 0) = "Peter"
    a(0, 1) = "Müller"
    a(1, 0) = "Hans"
    a(1, 1) = "Eichel"
    ListBox.List() = a

Häufige Fehler und Lösungen

  • Fehler: "Eigenschaft List kann nicht gesetzt werden": Dieser Fehler tritt auf, wenn du versuchst, die List-Eigenschaft zu setzen, ohne vorher einen Eintrag mit AddItem hinzugefügt zu haben. Stelle sicher, dass du zuerst AddItem aufrufst.

  • Fehler beim Zuweisen eines Arrays: Wenn du ein Array zuweist, stelle sicher, dass die Dimensionen des Arrays korrekt sind und dass die Listbox mehrspaltig ist, wenn du mehr als eine Spalte verwenden möchtest.


Alternative Methoden

Wenn die direkte Zuweisung zur Listbox nicht funktioniert, kannst du auch:

  • Zellenbereich verwenden: Fülle die Listbox mit Werten aus einem Zellenbereich:

    ListBox.List = Worksheets("Tabelle1").Range("A1:B2").Value
  • Datenbankabfragen: Verwende SQL-Abfragen, um Daten aus einer externen Datenquelle in die Listbox zu laden.


Praktische Beispiele

Hier sind einige Beispiele, wie du die Listbox in verschiedenen Szenarien verwenden kannst:

  1. Einfaches Beispiel:

    ListBox.AddItem "Apfel"
    ListBox.List(0, 1) = "Grün"
  2. Mit Array:

    Dim fruits(1, 1) As Variant
    fruits(0, 0) = "Banane"
    fruits(0, 1) = "Gelb"
    fruits(1, 0) = "Kirsche"
    fruits(1, 1) = "Rot"
    ListBox.List = fruits

Tipps für Profis

  • Verwendung von For-Schleifen: Um mehrere Einträge effizient hinzuzufügen, kannst du eine For-Schleife verwenden:

    Dim i As Integer
    For i = 1 To 10
       ListBox.AddItem "Eintrag " & i
    Next i
  • Datenvalidierung: Überprüfe die Eingabewerte, bevor du sie der Listbox hinzufügst, um Fehler zu vermeiden.


FAQ: Häufige Fragen

1. Warum funktioniert die List-Eigenschaft nicht? Die List-Eigenschaft kann nicht gesetzt werden, wenn zuvor kein Eintrag hinzugefügt wurde. Stelle sicher, dass du AddItem zuerst aufrufst.

2. Wie kann ich mehrere Autofilter in Excel aktivieren? Um mehrere Autofilter zu aktivieren, musst du sicherstellen, dass die Filterbereiche korrekt definiert sind und dass du die Filter nacheinander anwendest:

Worksheets("List").Range("A2").AutoFilter Field:=1, Criteria1:=(SearchName)
Worksheets("List").Range("B2").AutoFilter Field:=2, Criteria1:=(SearchBrand)

Mit diesen Informationen solltest du in der Lage sein, die Listbox in Excel VBA effektiv zu nutzen und häufige Probleme zu beheben.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige