Anzeige
Archiv - Navigation
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
824to828
824to828
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

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

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
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

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige