Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1260to1264
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
Inhaltsverzeichnis

ListBox in Tabelle

ListBox in Tabelle
Peter
Hallo,
langsam komme ich mit meinem Vorhaben weiter und komme zur Erkenntnis, dass ich so den Überblick verliere. Deswegen habe ich mich an das Thema Listbox heran gewagt. Terra Inconita für mich, öffne es nicht, wenn du nicht bereit bist. Ich muss aber diese Kiste mir zunutze machen, sonst gehe ich kurz oder lang auf dem Zahnfleisch daher. Ich habe mir dazu eine Testapparatur gebastelt. Ziel dabei ist es, erstmal was in Sheet1 steht, 4 Spalten, in die Listbox im Sheet2 zubekommen. Ich gehe nach dem System vor: Ich Probiere es mit 2 Spalten, wenn das geht, geht es auch mit 4.
Hier ist mein Kode, alles was Wahnsinn ist oder wie Kraut und Rüben ausschaut, habe ich entfernt. Bei meinen Versuchen habe ich schon System ausfälle Produziert. Deswegen wäre ich froh wenn Ihr mir weiter helfen könntet.
Sub teszt()
Dim i As Long
Dim a As Long
a = 0
With ListBox1
For i = 2 To Worksheets("Munka1").Cells(Rows.Count, 2).End(xlUp).Row
ListBox1.Clear
ListBox1.AddItem
ListBox1.list(a, 0) = Sheets(1).Cells(i, 2)
ListBox1.list(a, 1) = Sheets(1).Cells(i, 2).Row
a = a + 1
Next i
End With
End Sub
Das Ziel was mir vor Augen schwebt ist, wenn ich ein shape.Objekt betätige, ich auswählen kann, ob ich das Book öffnen will oder nur schauen will was da gerade alles aufgelistet ist. Dieser Teil läuft bis auf meine ListBox. Wenn ihr wollt, kann ich diesen Kode auch senden.
MfG Peter

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: ListBox in Tabelle
01.05.2012 09:43:23
Hajo_Zi
Hallo Peter,
warum über Code? Du willst alle werte anzeigen. Also Eigenschaften ListFillrange Tabelle1!A1:C3. Das Kannst Du auch per Vba zuweisen
Listbox1.listfillrange="Munka1!A1:C" & Worksheets("Munka1").Cells(Rows.Count, 2).End(xlUp).Row
Ich baue keine Datei nach. Also ohne Testung

AW: ListBox in Tabelle
01.05.2012 09:50:11
Josef

Hallo Peter,
deine Beschreibung ist zwar wortreich aber nicht sehr aussagekräftig und etwas wirr.
Meinst du so?
Sub teszt()
  Dim lngIndex As Long
  
  With ListBox1
    .Clear
    For lngIndex = 2 To Worksheets("Munka1").Cells(Rows.Count, 2).End(xlUp).Row
      .AddItem Sheets(1).Cells(lngIndex, 2)
      .List(.ListCount - 1, 1) = lngIndex
    Next
  End With
End Sub



« Gruß Sepp »

Anzeige
AW: ListBox in Tabelle
01.05.2012 10:15:16
Peter
Hallo,
danke für die schnelle Antwort. Nun beim Term "With ListBox1" habe ich schon das Problem. Ich habe ListBox1 als Object defeniert. Wenn ich jetzt sage .Clear, bekomme ich LF91 Object oder Variable nicht defeniert.
Die Tabelle1 (Munka1) sieht vom Aufbau so aus, dass die Spalten A und B "gefüllt" sind, Spalte C ist Leer (Abstandshalter), Spalten D und E sind "gefüllt".
Ich hoffe das ich mich etwas klarer ausgedrückt habe.
MfG Peter
AW: ListBox in Tabelle
01.05.2012 10:30:14
hary
Hallo Peter
Und was ist wenn du das Sheet, wo die Listbox drin ist, davorsetzt?

With Sheets("Tabelle2").ListBox1

gruss hary
Anzeige
AW: ListBox in Tabelle
01.05.2012 11:10:53
Peter
Hallo,
ja darauf bin ich gerade auch gekommen, ich Depp. Damit bin ich einen Schritt weiter *Freu*. Vielen Dank trotzdem für den Hinweis. Vorallem dir Sepp. Ich muss zugeben, das ich leider den Code nicht richtig Interprtieren kann. Deswegen habert es an der Umsetzung.
Warscheinlich stehe ich auf der Leitung:
Aber irgendwo muss ich doch Column.Count schreiben so das er mir die spalten wieder gibt.
MfG Peter
AW: ListBox in Tabelle
01.05.2012 12:25:47
Josef

Hallo Peter,
schon wieder wirr!
Warum lädst du nicht eine Beispieldatei hoch und beschreibst was du denn eigentlich erreichen willst.

« Gruß Sepp »

Anzeige
AW: ListBox in Tabelle
01.05.2012 12:45:22
Peter
Hallo,
weil das schon mehrmal schief ging und ich es aufgegeben habe. Habe es auch mit Upload probiert, danach kam keine Rückmeldung. Habe das ganze schon in einem Workbook abgelegt, nur das verschicken ist proplematisch.
Also was ich will hast du fast schon mit deinem Kode, wieder gegeben. Mit deinem Kode wird eine Spalte wieder gegeben. Ich steige bei den Listboxen noch nicht durch.
Ich will erreichen das bis zu 4 Spaltenpaare wieder gegeben werden. Bis zu 4 sage ich deswegen, weil es aber auch nur 1 Spaltenpaar sein kann. Es sind immer immer Paare. Zwischen den Spaltenpaaren ist eine Leere Spalte, um mich besser Orientieren zukönnen. ich kann diese Spalte auch weg lassen, wenn es Programmiertechnisch besser wäre. Die Anzahl der Zeilen bei allen Spalten, ist immer gleich. Man kann das auch als Array zusammenfassen.
Ich hoffe ich habe mich jetzt besser, weniger wirr ausgedrückt.
MfG Peter
Anzeige
AW: ListBox in Tabelle
01.05.2012 12:52:47
Josef

Hallo Peter,
was ist beim Fileupload kompliziert bzw. was hat nicht funktioniert?
Sub teszt()
  Dim lngIndex As Long
  
  With Sheets("Tabelle2").ListBox1
    .Clear
    .ColumnCount = 4
    For lngIndex = 2 To Worksheets("Munka1").Cells(Rows.Count, 2).End(xlUp).Row
      .AddItem Worksheets("Munka1").Cells(lngIndex, 2)
      .List(.ListCount - 1, 1) = lngIndex 'zweite Spalte
      .List(.ListCount - 1, 2) = Worksheets("Munka1").Cells(lngIndex, 4) 'dritte Spalte
      .List(.ListCount - 1, 3) = Worksheets("Munka1").Cells(lngIndex, 5) 'vierte Spalte
    Next
  End With
End Sub



« Gruß Sepp »

Anzeige
AW: ListBox in Tabelle
01.05.2012 13:40:06
Peter
Hallo,
was nicht funktioniert hat:
Ich habe meine Quelle angegeben, hier beim Fileupload und dann aber keinen Uploadlink bekommen.
Aber DANK deiner Hilfe bin ich etwas schlauer geworden. Langsam beginne ich es zuverstehen.
Vielen vielen DanK.
ich habe den Kode fast vollständig. Nach deiner letzten Antwort, konnte ich klar ersehen, wenn ich mit Leeren Spalten arbeite, kann ich ich nicht Inkrementel arbeiten. Jetzt habe ich festgestellt, dass der Kode von dir, so wie ich ihn umgeschrieben habe nicht richtig arbeitet. Hier ist mein Ergebniss:
Sub teszt1()
Dim lngIndex As Long
Dim ListBox1 As Object
Dim i As Long
Dim a As Integer
Dim b As Integer
Worksheets("Munka1").Activate
For i = 1 To 20
If Cells(i, 1) = "" Then Exit For
Next i
i = i - 2
Worksheets("Munka2").Activate
a = 1
b = 2
With Worksheets("Munka2").ListBox1
.Clear
.ColumnCount = i
For lngIndex = 1 To Worksheets("Munka1").Cells(Rows.Count, 1).End(xlUp).Row
.AddItem Sheets(1).Cells(lngIndex, 1)
.list(.ListCount - 1, a) = Worksheets("Munka1").Cells(lngIndex, b)
a = a + 1
b = b + 1
Next
End With
End Sub
Wo liegt mein Gedanken fehler?
MfG Peter
Anzeige
AW: ListBox in Tabelle
01.05.2012 13:50:32
Matthias
Hallo Peter,
hier mal eine Beispielmappe , in der 4er Spaltengruppen (3 mal) in eine Userform eingelesen werden.
In der UF werden dann diese Spaltenbereiche umgebrochen , sodas eine Liste entsteht.
Dieser Code ist auch leicht umzubauen, das ALLE Spalten nebeneinander stehen.
Datei: https://www.herber.de/bbs/user/80007.xlsm
Rückmeldung wäre nett.
MfG Matthias
AW: ListBox in Tabelle
01.05.2012 13:54:00
Peter
Nicht verraten...
Ich bin selber darauf gekommen, gerade habe sich meine Synapsen wieder gefunden...
Sub teszt1()
Dim lngIndex As Long
Dim ListBox1 As Object
Dim i As Long
Dim j As Long
Dim a As Integer
Dim b As Integer
Worksheets("Munka1").Activate
For i = 1 To 20
If Cells(i, 1) = "" Then Exit For
Next i
i = i - 2
Worksheets("Munka2").Activate
With Worksheets("Munka2").ListBox1
.Clear
.ColumnCount = i
For lngIndex = 1 To Worksheets("Munka1").Cells(Rows.Count, 1).End(xlUp).Row
.AddItem Sheets(1).Cells(lngIndex, 1)
a = 1
b = 2
For j = 1 To i
.list(.ListCount - 1, a) = Worksheets("Munka1").Cells(lngIndex, b)
a = a + 1
b = b + 1
Next j
Next
End With
End Sub
Und es passt meine ich.
Vielen Dank Sepp Szuper deine Hilfe
Danke MfG Peter
Anzeige
AW: ListBox in Tabelle
01.05.2012 13:57:22
Peter
Oh Szuper Matthias, dein Tipp. Ich werde Ihn gleich mal studieren. Danke
MfG Peter
- Dank an fcs -
01.05.2012 14:02:14
Matthias
Hallo Peter,
4 Beiträge im Forum tiefer, hatte Dittmar ein ähnliches Problem,
bedank dich bei Franz = fcs !
Worauf ich hinaus will, ist das wenn man ein wenig recherche betreibt oder allgemein im Forum stöbert,
findet sich meist ein passender Ansatz zur Lösung.
MfG Mattias
AW: - Dank an fcs -
01.05.2012 14:06:31
Peter
Uuuupppss, ich habe etwa 1,5 Tage gesucht und nix passendes gefunden. Deswegen habe ich mich an das Forum gewand. Sorry, vielleicht kann diese Lösung ja jemanden helfen, meine Überschrift sollte wohl auch Google darauf bringen. *Peinlich* trotzdem Danke nochmal.
MfG Peter
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige