Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
808to812
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
808to812
808to812
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

listbox füllen

listbox füllen
06.10.2006 11:23:59
Julia
Hallo,
also ich hab schon mal in euren Archiven gesucht, aber leider nciht das richtige gefunden. Wahrscheinlich weil meine Frage so trivial ist, aber ich überleg jetzt schon länger und mir mag einfach nciht mehr der richtige Weg einfallen.
Ich habe eine spalte in meinem excel sheet und die Werte würde ich gern in eine listbox einlesen. habe es mit:
zeile = 4
Do While Sheets("Eingabe").Range("zeile") ""
ComboBox1.AddItem = Sheets("Eingabe").Range("zeile")
zeile = zeile + 1
Loop
bei listbox_click
versucht, aber es passiert einfach nicht's...
danke für die Hilfe

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: listbox füllen
06.10.2006 11:28:26
Luschi
Hallo Julia,
ComboBox1.AddItem --&gt Das ist eine Combobox und keine ListBox
Gruß von Luschi
aus klein-Paris
AW: listbox füllen
06.10.2006 11:33:12
Julia
ach ja na das hängt damit zusammen das ich es mti beiden sachen probiert habe...
also auch wenn ich listbox.additem hab...geht's trotzdem nicht. :-(
habe grad schonmal geguckt ob ich es auch bei den richtigen sub's drin hab...aber soweit is das alles richtig...
nomal müsste das doch gehen, oder!?
könnt ich eigentlich die spalte auch als range objekt an die list-/combobox übergeben!?
AW: listbox füllen
06.10.2006 11:44:12
otto
Hi,
du musst erst mal eine Zeile zur ListBox hinzufügen, dann die gewünschten Daten.
z.B. so:
Dim az
az = ActiveCell.Row
ListBox1.AddItem az
ListBox1.List(0, 0) = Cells(az, 1)
ListBox1.List(0, 1) = Cells(az, 7)
ListBox1.List(0, 2) = Cells(az, 62)
...
Gruß
otto
Anzeige
AW: listbox füllen
06.10.2006 11:47:55
Julia
hi,
also ich hatte da an sowas:
For zeile = 4 To 4 + a - 1
zelle = Sheets("Eingabe").Cells(zeile, 1)
ListBox1.AddItem = Sheets("Eingabe").Range("zelle")
zeile = zeile + 1
Next zeile
in die richtung gedacht...natürlich funktioniert das nciht... :-(
das problem ist: ich kann nicht jede Zeil einzeln angeben, da es sein kann, das es mal mehr oder weniger sind...d.h. ich muss das ganze irgendwie dynamisch mit ner schleife oder so machen!?...geht das!?
AW: listbox füllen
06.10.2006 11:54:35
Julia
wenn ich es richtig verstanden hab, kann ich ja otto's version so:
Dim a As Integer
Dim b As Integer
Dim zeile As Integer
a = Modul1.zaehle_teile
c = 0
b = ActiveCell.Row
ListBox1.AddItem a
For zeile = 4 To 4 + a - 1
ListBox(0, c) = Cells(b, zeile)
Next zeile
mit schleife machen oder?!
aber es geht mal wieder nciht...ich weiß auch nicht mehr...
es muss doch irgendeinen einfach befehl geben um in eine list- oder combobox eine tabellenspalte mit variabler länge einzulesen, oder?!
bin schon am verzweifeln
Anzeige
AW: listbox füllen
06.10.2006 12:10:40
otto
Hi Julia,
vielleicht so:
Dim Zeile, az
Zeile = 0
az = ActiveCell.Row
Do
ListBox1.AddItem az
ListBox1.List(Zeile, 0) = Cells(az, 1)
ListBox1.List(Zeile, 1) = Cells(az, 7)
ListBox1.List(Zeile, 2) = Cells(az, 62)
...
Zeile = Zeile + 1
az = az + 1
If Cells(az, 1) = "" Then Exit Do
Loop
Gruß
otto
AW: listbox füllen
06.10.2006 12:15:21
Julia
hi otto,
aber webb ich den code da oben richtig verstehe müsste ich
ListBox1.List(Zeile, 0) = Cells(az, 1)
ListBox1.List(Zeile, 1) = Cells(az, 7)
ListBox1.List(Zeile, 2) = Cells(az, 62
.
.
.
jedes mal wieder hinschreiben, so oft bis meine spalte keine einträge hat...da ja die 2. nr. bei listbox1.list fortlaufen ist...naja die könnt ich ja auch durch eine variable ersetzten...
aber was ist die 2. nr. bei cells!? normal die spalte oder!?
Anzeige
AW: listbox füllen
06.10.2006 12:21:51
otto
Hi,
dazu ist ja
If Cells(az, 1) = "" Then Exit Do
gedacht. die 1 (Spalte A) kannst du ja beliebig erstzen. Wenn da keine daten mehr sten hört das Makro auf.
Du fügst ja nur die Spalten in die Listbox ein die du sehen willt, die ... sollen nur bedeuten dass du was dranhängen kannst, nicht musst.
Gruß
otto
AW: listbox füllen
06.10.2006 12:26:48
Julia
ach so...ok und die 2. zahl bei listbox.list!?
die 1. is mein inhalt und die zweite ist dann der "rang" ind er listbox!? hab ich das jetzt so richtig verstanden!`?
AW: listbox füllen
06.10.2006 12:38:04
Julia
hi otto,
also nochmal ne allgemeine frage:
ich befinde mich im moment in userform 2 brauche aber eine zahl aus modul1(in modul1 gibt es eine function die mir diese zahl errechnet)
kann ich diese zahl dann ind userform 2 so "implementier"(ist jetzt nciht wirklich das richtige wort, aber ein anders fällt mir nicht ein)
a = Modul1.zaehle_teile
und weißt du warum, wenn ich im debugger mit einzelschritt, dann auf meine listbox klicke ich nicht zu userform2 private sub listbox1_click() komme!=?!
Anzeige
AW: listbox füllen
06.10.2006 14:37:31
otto
z.B. ListBox1.List(0,0) = Zeile1, Spalte 1 der ListBox
ListBox1.List(0,1) = Zeile1, Spalte 2 der ListBox
otto
AW: listbox füllen
06.10.2006 12:09:37
Julia
Do While Sheets("Eingabe").Cells(zeile, 1) ""
With .ListBox1
ListBox(a) = Cells(zeile, 1)
a = a + 1
zeile = zeile + 1
.ListIndex = 0
End With
Loop
und so habe ich es auch noch probiert...:-( aber geht auch nciht...
sogar das:

Private Sub ComboBox1_Click()
ComboBox1.AddItem = "5"
End Sub

geht nciht...heißt ja das ich nen riesen denkfehler drin haben muss. aber was mir noch aufgefallen ist...wenn ich auf debuggen--> einzelschritt geh und dann die combo oder listbox anklick, geht er dann nciht in die userform wo ja das sub dazu steht...könnten meine probleme damit zusammenhängen?"!
Anzeige
AW: listbox füllen
07.10.2006 12:17:27
Daniel
Hallo
hier zwei Metohden, deine Listbox zu befüllen.
die erste ist ne normale Schleife, die die Zelleinhalte zur Listbox hinzufügt.
Bei der Zweiten Methode wird die Listbox direkt mit dem Zellbereich verknüpft.
Das hat die Folgen, daß:
- Änderungen im Zellbereich auch in der Listbox sichtbar werden
- Per Additem o.ä. keine Änderungen an der Listbox mehr möglich sind, eben nur über den Zellbereich.

Sub Liste_füllen_1()
Dim Zeile as long
ListBox1.Clear
Zeile = 4
Do While sheets("Eingabe").Cells(Zeile, 1) <> ""
ListBox1.AddItem sheets("Eingabe").Cells(Zeile, 1).Value
Zeile = Zeile + 1
Loop
End Sub


Sub Liste_füllen_2()
ListBox1.ListFillRange = "'Eingabe'!" & sheets("Eingabe").Range("A4").CurrentRegion.Columns(1).Address
End Sub

Gruß, Daniel
ps. Eigentlich ist das dein Fehler: Sheets("Eingabe").Range("zeile")
1. Fehler: Zeile ist eine Variable und darf daher nicht in Anführungszeichen stehen.
2. Fehler: es fehlt die angabe der Spalte
daß müsste so aussehen: sheets("Eingabe").range("A:" & zeile)
oder so: sheets("Eingabe").cells(1, Zeile)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige