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

in ListBox einlesen

Forumthread: in ListBox einlesen

in ListBox einlesen
06.12.2006 13:05:03
otto
Hi,
mit folgendem Code lese ich Daten in eine ListBox ein.
Nach dem 8. Eintrag hört es allerdings auf ? Es kommt "ungültiger Eigenschaftswert"
Per Mauszeiger(Quickinfo) sind aber bis List(zeile, 13)die richtigen Daten eingelesen.
Ist das einlesen begrenzt?

Private Sub interneZg()
Dim intern, zeile, gefunden
intern = interneNr
zeile = 0
Sheets("Auftrag").Select
With Worksheets("Auftrag").Range("i10:i3000")
Set c = .Find(intern, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
gefunden = c.Row
ListBox1.AddItem gefunden
ListBox1.ColumnCount = 14
ListBox1.ColumnWidths = "80;55;55;20;60;20;100;70;40;40;40;75;40;70"
ListBox1.List(zeile, 0) = Cells(gefunden, 1)
ListBox1.List(zeile, 1) = Cells(gefunden, 3)
ListBox1.List(zeile, 2) = Cells(gefunden, 4)
ListBox1.List(zeile, 3) = Cells(gefunden, 5)
ListBox1.List(zeile, 4) = Cells(gefunden, 6)
ListBox1.List(zeile, 5) = Cells(gefunden, 7)
ListBox1.List(zeile, 6) = Cells(gefunden, 8)
ListBox1.List(zeile, 7) = Cells(gefunden, 9)
ListBox1.List(zeile, 8) = Cells(gefunden, 10)
ListBox1.List(zeile, 9) = Cells(gefunden, 11)
ListBox1.List(zeile, 10) = Cells(gefunden, 12)
ListBox1.List(zeile, 11) = Cells(gefunden, 25)
ListBox1.List(zeile, 12) = Cells(gefunden, 26)
ListBox1.List(zeile, 13) = Cells(gefunden, 27)
zeile = zeile + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub

Gruß
otto
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: in ListBox einlesen
06.12.2006 13:38:02
Franc
Nach was suchst du eigentlich?
interneNr ist zumindest in dem Sub nicht deklariert oder meinst du "interneNr" ? (also das Wort)
interneNr
06.12.2006 14:13:20
otto
H,
interneNr ist der Name einer Textbox.
otto
AW: in ListBox einlesen
06.12.2006 13:58:21
Stefan
Hallo Otto,
Eine ungebundene Listbox auf 10 Spalten begrenzt (0-9). Warum du allerdings Probleme schon nach dem 8. Eintrag hast kann ich mir nicht erklaeren.
Schoene Gruesse
Stefan
Anzeige
AW: in ListBox einlesen
06.12.2006 14:17:33
otto
Hi,
sorry es war die neunte die noch geht.
Aber auch als gebundene UF funktioniert es nicht, oder was meinst du mit ungebundener ListBox?
otto
AW: in ListBox einlesen
06.12.2006 14:59:39
Beni
Hallo Otto,
fasse die Daten in eine Array zusammen und für sie ein.
Nicht getestet.
Gruss Beni

Private Sub interneZg()
Dim arrValues() As Variant
Dim intern, zeile, gefunden
intern = interneNr
zeile = 0
Sheets("Auftrag").Select
With Worksheets("Auftrag").Range("i10:i3000")
Set c = .Find(intern, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
gefunden = c.Row
ListBox1.ColumnCount = 14
ListBox1.ColumnWidths = "80;55;55;20;60;20;100;70;40;40;40;75;40;70"
ReDim Preserve arrValues(0 To 13, 0 To zeile)
arrValues(0, zeile) = Cells(gefunden, 1)
arrValues(1, zeile) = Cells(gefunden, 3)
arrValues(2, zeile) = Cells(gefunden, 4)
arrValues(3, zeile) = Cells(gefunden, 5)
arrValues(4, zeile) = Cells(gefunden, 6)
arrValues(5, zeile) = Cells(gefunden, 7)
arrValues(6, zeile) = Cells(gefunden, 8)
arrValues(7, zeile) = Cells(gefunden, 9)
arrValues(8, zeile) = Cells(gefunden, 10)
arrValues(9, zeile) = Cells(gefunden, 11)
arrValues(10, zeile) = Cells(gefunden, 12)
arrValues(11, zeile) = Cells(gefunden, 25)
arrValues(12, zeile) = Cells(gefunden, 26)
arrValues(13, zeile) = Cells(gefunden, 27)
zeile = zeile + 1
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
If zeile <> 0 Then ListBox1.Column = arrValues
End Sub

Anzeige
Danke
06.12.2006 16:07:27
otto
Hi,
danke funktioniert super.
Gruß
otto
AW: in ListBox einlesen
06.12.2006 14:59:39
Stefan
Eine gebundene Listbox waere wenn du die Listbox ueber die RowSource-Eigenschaft an Zellen in Deinem Arbeitsblatt bindest (wenn Du der Eigenschaft z.B. den Wert Blatt1!A1:M1 zuweist, um die Werte aus der ersten Zeile einzulesen), und somit ein Abbild der Werte in deinem Arbeitsblatt bekommst. Da gehen dann auch mehr als 10 Spalten. Das denke ich wird Dir aber nichts helfen, sofern Du die Werte die Du einlesen willst nicht innerhalb eines zusammenhaengenden Zellenblockes bekommst (ueberzaehlige Spalten lassen sich durch eine Spaltenbreite 0 ausblenden, aber ich weiss nicht was Du mit ueberzaehligen Zeilen machen koenntest...).
In deinem Fall denke ich musst Du dich irgendwie auf 10 Spalten begrenzen.
Ich lass die Frage mal offen falls noch irgendwer eine Idee hat.
Schoene Gruesse
Stefan
Anzeige
AW: in ListBox einlesen
06.12.2006 14:41:00
otto
Hi,
wi kann ich dennoch meine 13 Spalten befüllen?
otto
AW: in ListBox einlesen
06.12.2006 14:53:30
Kurt
Hi,
einzige Chance, befülle die Box mit Rowsource.
mfg Kurt
;

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