Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
184to188
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
184to188
184to188
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

nur bestimmte zeilen in listbox anzeigen

nur bestimmte zeilen in listbox anzeigen
29.11.2002 15:07:56
goofe
hallo,
folgendes userform/listbox-problem:
in der listbox in einer userform lasse ich mir alle gefüllten zeilen der tabelle1 ab der 3.zeile von der spalte a bis zur spalte h anzeigen (siehe makrotext weiter unten). ich möchte aber, dass in der listbox nicht alle zeilen mit inhalt angezeigt werden, sondern nur die zeilen, bei der die entsprechenden zellen in spalte i (spalte 9) nicht leer sind. die zeilen, bei denen die entsprechenden zellen in spalte i leer sind, sollen also nicht in der listbox erscheinen.
wie muss ich nun das nachfolgende makro abändern?

Private Sub Userform_initialize()
Dim i as integer
sheets("tabelle1").activate
i= activesheet.usedrange.rows.count
with userform1.listbox1
.columnCount = 8
.columnHeads = true
.rowSource = "tabelle1!A3:H" & i
.columnWidths = "2cm;2cm;2,1cm;2,1cm;3,5cm;3,2cm;3cm;1,2cm"
end with
end sub

bin für jeden tipp dankbar!

gruss,
goofe

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 15:28:35
Hajo
Hallo goofe

das geht nur über eine Schleife

Geruß Hajo

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 15:32:10
Ralf Sögel
ColumnHeads gehen nur bei gebundenem control(RowSource)!
Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 15:52:52
Hajo
Hallo Ralf

Danke für den Tip

Gruß Hajo

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:00:31
goofe
hallo hajo und ralf,

funktioniert soweit. habt ihr aber nicht noch eine lösung, bei der auch die columnheads funktionieren? jetzt sind die spalten-köpfe nämlich leer, werden aber dringend benötigt!

gibt es also dafür noch eine andere möglichkeit?


gruss,
goofe

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:02:53
Hajo
Hallo goofe

füge die Spaltenköpfe als ersten ein und Reagiere nich auf die Auswahl der ersten Zeile.

Siehe auch Hinweis von Ralf

Gruß Hajo

Anzeige
Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:20:28
goofe
das verstehe ich jetzt nicht? was meint ralf mit control rowsource?
was soll ich jetzt in deinem makrotext wie abändern, dass die spaltenköpfe auch in der listbox entsprechend drinstehen?

danke!


gruss,
goofe

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:23:57
Hajo
Hallo Goofe

Ralf hat geschrieben in gebundenen List (also Zusammenhängend mit einmal zuweise)

Du hast nichts geschrieben wo Deine Spaltenköpfe stehen. Ich vermute mal in der Zeile bevor ich mit dem zuweisen anfage. Also den Startpunkt um eins heruntersetzen.

Gruß Hajo

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:39:22
goofe
also das verstehe ich jetzt absolut nicht. in meiner tabelle1 stehen die spaltenüberschriften in der 2. zeile. die dazugehörigen daten beginnen ab der 3. zeile. die listbox zeigte mir die ganze zeit auch noch die spaltenköpfe mit an. bei deinem folgenden makrotext, werden diese nicht mehr angezeigt. wie muss ich jetzt was und wo ändern?:

Private Sub Userform_initialize()
Dim InI As Long
Dim InZeile As Integer
With Sheets("tabelle1")
With ListBox1
.ColumnCount = 8
' .ColumnHeads = True ' habe ich noch kein Lösung bei For Next
.ColumnWidths = "2cm;2cm;2,1cm;2,1cm;3,5cm;3,2cm;3cm;1,2cm"
End With
For InI = 3 To .UsedRange.Rows.Count
If Cells(InI, 9) <> "" Then
ListBox1.AddItem .Range("A" & InI)
ListBox1.List(InZeile, 1) = .Range("B" & InI)
ListBox1.List(InZeile, 2) = .Range("C" & InI)
ListBox1.List(InZeile, 3) = .Range("D" & InI)
ListBox1.List(InZeile, 4) = .Range("E" & InI)
ListBox1.List(InZeile, 5) = .Range("F" & InI)
ListBox1.List(InZeile, 6) = .Range("G" & InI)
ListBox1.List(InZeile, 7) = .Range("H" & InI)
InZeile = InZeile + 1
End If
Next InI
End With
End Sub

ist gar nicht so einfach :-)

nochmal gruss,
goofe

Anzeige
Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 16:44:43
Hajo
Hallo goofe

das vertehe ich nicht, die Listbox wird mit den Werten ab Zeile 3 gefüllt. Also bei mir wurde die Zeile 2 (Spaltenköpfe) nicht angezeigt. Ich hätte geschrieben änder InI =3 auf InI =2.

Aber da bei Dir schon die paltenköpfe in der Listbox angezeigt werden, bin ich mit meinem Latein am Ende.

Dieser Beitrag ist für mich abgeschlossen. Ich kann hier keine neuen Lösungen mehr einbringen.

Gruß hajo

Re: nur bestimmte zeilen in listbox anzeigen
29.11.2002 23:47:05
Ralf Sögel
Eine Listbox kann die Header nur anzeigen, wenn sie gebunden ist, das heißt, sie muss mittels RowSource ihre Daten erhalten. Bei AddItem geht das eben nicht.
Workaround:
Lies deine Daten mit einer Schleife in ein(temporäres?) Blatt ein und verwende diesen zellbereich als RowSource, dann klappts auch mit den ColumnHeads!
Anzeige
an Ralf
02.12.2002 09:17:09
Goofe
hallo ralf,
anscheinend hast du verstanden, was ich meine. allerdings verstehe ich nicht, wie das funktionieren soll mit der schleife und temporäremverzeichnis? bin in makros absoluter anfänger.
kannst du mir vielleicht sagen, was ich in meinem makrotext, wo und wie ändern bzw. umschreiben muss?

vielen dank für deine bemühungen!

gruss,
goofe

342 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige