Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ungültiger Eigenschaftswert List in Listbox?

Forumthread: Ungültiger Eigenschaftswert List in Listbox?

Ungültiger Eigenschaftswert List in Listbox?
01.08.2002 10:42:44
Michael
Hallo,

ich habe folgendes Problem:
Ich habe eine ListBox mit 11 Spalten erstellt(.ColumnCount = 11).

Sobald ich folgenden Code ablaufen lasse, funktioniert alles prächtig; bis auf das Befüllen der 11. Spalte.

With ListBox_QAB
.AddItem
N = .ListCount - 1
For j = 1 To 10
.List(N, j - 1) = Matrix(Registerblatt).Tabelleninhalt(i, j)
Next j
.List(N, 10) = i ' *** Laufzeitfehler 380 ***
End With

Ich möchte der Spalte 11 den Wert von i übergeben(wird vorher ermittelt),
erhalte in dieser Zeile aber immer den Laufzeitfehler 380 :
"Eigenschaft List konnte nicht gesetzt werden. Ungültiger Eigenschaftswert."

Egal womit, ich kann die 11.Spalte nicht ansprechen.

Woran kann das denn liegen???
Hoffentlich kann mir jemand helfen !!!

Grüße und Danke
Michael

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: Ungültiger Eigenschaftswert List in Listbox?
01.08.2002 10:53:04
L.Vira
bei ungebundenen Listboxen ist bei 10 Spalten Schluss.
Wenn du mehr brauchst, musst du mit RowSource hantieren.
Re: Ungültiger Eigenschaftswert List in Listbox?
01.08.2002 11:12:20
Michael
Vielen Dank!!!
Ich hab' schon graue Haare bekommen.

In dem Fall ist RowSource madig...
Ich gebe i anders weiter.

Nochmals vielen Dank!!!

Gruß
Michael

Anzeige
;

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

Infobox / Tutorial

Ungültiger Eigenschaftswert List in Listbox beheben


Schritt-für-Schritt-Anleitung

  1. ListBox erstellen: Stelle sicher, dass deine ListBox korrekt erstellt wurde und die Anzahl der Spalten richtig eingestellt ist. Setze .ColumnCount = 11 für eine ListBox mit 11 Spalten.

  2. Werte hinzufügen: Verwende den folgenden Code, um Werte hinzuzufügen, aber beachte, dass du nur die ersten 10 Spalten direkt ansprechen kannst:

    With ListBox_QAB
       .AddItem
       N = .ListCount - 1
       For j = 1 To 10
           .List(N, j - 1) = Matrix(Registerblatt).Tabelleninhalt(i, j)
       Next j
       ' Hier tritt der Fehler auf
       .List(N, 10) = i  ' Laufzeitfehler 380
    End With
  3. Fehlerbehebung: Wenn du den Laufzeitfehler 380 erhältst, überprüfe, ob du mit ungebundenen ListBoxen arbeitest, da diese auf 10 Spalten beschränkt sind.


Häufige Fehler und Lösungen

  • Laufzeitfehler 380: Dieser Fehler tritt auf, wenn du versuchst, eine 11. Spalte in einer ungebundenen ListBox zu setzen. Die Lösung besteht darin, die Anzahl der Spalten auf 10 zu beschränken oder eine gebundene ListBox zu verwenden.

  • Ungültiger Eigenschaftswert: Achte darauf, dass die Daten, die du in die ListBox einfügen möchtest, den richtigen Datentyp haben. Überprüfe, ob der Wert von i korrekt ermittelt wurde.


Alternative Methoden

  • RowSource verwenden: Eine effektive Möglichkeit, mehr als 10 Spalten zu nutzen, ist die Verwendung der RowSource-Eigenschaft. Damit kannst du eine Datenquelle angeben, die mehr Spalten enthält.

    Beispiel:

    ListBox_QAB.RowSource = "A1:K100"  ' Definiert den Bereich mit mehr Spalten
  • Daten in einem Array speichern: Du kannst die Daten in einem Array speichern und die gesamte Array-Datenstruktur in die ListBox einfügen.


Praktische Beispiele

Hier ist ein kurzes Beispiel, wie du eine gebundene ListBox mit 11 Spalten nutzen kannst:

Dim i As Long
Dim Matrix(1 To 100, 1 To 11) As Variant

' Beispielwerte in Matrix
For i = 1 To 100
    For j = 1 To 11
        Matrix(i, j) = "Wert" & i & "_" & j
    Next j
Next i

' ListBox füllen
With ListBox_QAB
    .ColumnCount = 11
    For i = 1 To 100
        .AddItem
        For j = 1 To 11
            .List(.ListCount - 1, j - 1) = Matrix(i, j)
        Next j
    Next i
End With

Tipps für Profis

  • Verwende gebundene ListBoxen: Wenn du mit vielen Daten arbeitest und mehr als 10 Spalten benötigst, sind gebundene ListBoxen die bessere Wahl.

  • Datenvalidierung: Stelle sicher, dass die Werte, die du in die ListBox einfügst, keine ungültigen Daten enthalten, um Laufzeitfehler zu vermeiden.

  • Debugging-Hilfen: Nutze Debug.Print, um die Werte von Variablen zu überprüfen, bevor du sie in die ListBox einfügst.


FAQ: Häufige Fragen

1. Warum kann ich die 11. Spalte in meiner ListBox nicht setzen?
Das liegt daran, dass ungebundene ListBoxen auf 10 Spalten beschränkt sind. Verwende RowSource oder eine gebundene ListBox für mehr Spalten.

2. Was ist der beste Weg, um mit großen Datenmengen in einer ListBox umzugehen?
Die Verwendung von gebundenen ListBoxen oder die Speicherung der Daten in einem Array kann helfen, die Leistung zu verbessern und Fehler zu vermeiden.

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