Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1444to1448
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 multiselect Häckchenfelder anpassen

Listbox multiselect Häckchenfelder anpassen
15.09.2015 11:58:44
bassi
Guten Morgen in die Runde.
Ich hab ein "Problem" was eigentlich gar keins ist. Sozusagen nur der Schönheit wegen...
;-)
Wenn man eine Listbox auf multiselect stellt, dann wird der gesamte Bereich der Range mit diesen Vierecken für die Häckchen belegt. Die Vierecke sind logisch, machen Sinn. Aber eben auch wenn dort keine Daten stehen?
Kann man das vielleicht irgendwie verhindern?
Das sieht ja so doch recht ulkig aus...
Viele Grüße
bassi

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox multiselect Häkchenfelder anpassen
15.09.2015 12:05:55
Rudi
hallo,
dann darfst du die LBx eben nur mit Daten füllen.
Siehe AddItem-Methode oder den Bereich (RowSource) anpassen.
Gruß
Rudi

AW: Listbox multiselect Häkchenfelder anpassen
15.09.2015 12:19:13
bassi
Hallo Rudi,
danke für deine schnelle Reaktion.
Das wäre freilich die einfache Variante.
Aber da ich ja vorher nie weiß, wieviele Daten in der listbox stehen werden macht es keinen Sinn.
Die Range muss so groß sein um die maximal angezeigte Anzahl an Daten anzeigen zu können.
An manchen Tagen stehen da aber eben nur drei Werte. Und das sieht dann seltsam aus :-(
Oder kann man vielleicht die Range an die Anzahl der in einem vorgegeben Bereich liegenden Daten (welche sich jederzeit ändern) anpassen?
*grübel*

Anzeige
oder kann man vielleicht ...
15.09.2015 12:22:40
Rudi
Hallo,
man kann.
Recherche: Listbox füllen.
Gruß
Rudi

AW: oder kann man vielleicht ...
15.09.2015 12:38:28
bassi
Ahhhh. Habs gefunden :) Das ist freilich die schönste Lösung.
Werd ich nachher gleich testen.
Ha. Super.
Rudi - besten Dank!

AW: oder kann man vielleicht ...
16.09.2015 09:35:13
bassi
Guten Morgen Rudi,
habs gestern getestet.
Bin zwar noch dabei den code für meinen Kopf zu entschlüsseln, aber mit ein bisschen stricken hat es im Grunde geklappt.
Allerdings musste ich einen Teil kappen.
Damit wir vom selben reden kopier ich den code hier nochmal rein den ich fand.
Private Sub UserForm_Initialize()
Dim letzte As Long
With Sheets("Tabelle3")
letzte = .Cells(.Rows.Count, 4).End(xlUp).Row 'letzte belegte Zellennummer SpalteD
'UserForm1.ComboBox1.RowSource = .Name & "!" & Range("D1:D" & letzte).Address
'ComboBox1.List = .Range("D1:D" & letzte).Value
End With
End Sub
Diesen Teil hier musste ich entfernen, dann funktioniert das im Grunde so wie angedacht.
ComboBox1.List = .Range("D1:D" & letzte).Value
Einen kleinen Haken hat das ganze aber dennoch.
Wenn in dem "überwachten" Bereich nur Werte und Leerzellen stehen, dann funktioniert das.
Wenn allerdings Werte und Formeln mit "" dort stehen, werden für die leer angezeigten "" Felder trotzdem ein Viereck angezeigt.
Gibts dafür vielleicht auch eine Lösung?
Viele Grüße
bassi
Achja... vielleicht für den Admin interessant?
Ich hatte gestern versucht wie angeraten nach "Listbox füllen" zu suchen.
Gebe ich den Text hier oben in das Suchfeld ein wird kein Beitrag gefunden.
Gebe ich den Text bei Google ein ist gleich der erste Fund ein Link in dieses Forum.
Mach ich da was falsch oder soll das so sein?

Anzeige
AW: oder kann man vielleicht ...
16.09.2015 12:46:55
Rudi
dann mach das so:
Private Sub UserForm_Initialize()
Dim letzte As Long, i As Long
ListBox1.Clear
With Sheets("Tabelle3")
letzte = .Cells(.Rows.Count, 4).End(xlUp).Row 'letzte belegte Zellennummer SpalteD
For i = 1 To letzte
If .Cells(i, 4)  "" Then ListBox1.AddItem .Cells(i, 4)
Next
End With
End Sub
Für den Admin:
Mit der Listensuche suchst du nur in der Forumsliste. Die enthält nur die letzten paar Tage.
Es gibt oben einen Button RECHERCHE
Gruß
Rudi

AW: oder kann man vielleicht ...
16.09.2015 17:03:26
bassi
Hallo Rudi,
erneut will ich dir danken.
Habe den code eingebaut. Jedoch wird nun Laufzeitfehler 70. Zugriff verweigert ausgeworfen.
Markiert wird die Stelle im letzten Teil:
Listbox1.Additem, Cells(i,4)
Kannst du mich bitte nochmal anstubsen?
Viele Grüße
bassi

Anzeige
AW: oder kann man vielleicht ...
17.09.2015 09:19:34
bassi
huch... hacken beim ausrufezeichen vergessen... *ankopfschlag*
*letzte Frage nochmal push*

Zugriff verweigert
17.09.2015 12:29:41
Rudi
Hallo,
huch... hacken beim ausrufezeichen vergessen... *ankopfschlag*
es ist ein Haken.
Wahrscheinlich hast du noch die RowSource gefüllt.
Gruß
Rudi

AW: Zugriff verweigert
17.09.2015 14:48:25
bassi
Hallo Rudi,
danke für deine Nachricht und den Tipp.
Klar ist es ein Haken… Sehr peinlich.
So ist das wenn man das mit dem Handy macht und nicht richtig kontolliert.
Sorry.
Und gleich nochmal sorry. Ich glaub ich hab nun großen Mist gebastelt.
Du hast in sofern Recht, dass ich RowSource gefüllt habe. Aber nicht über Eigenschaft, sondern im Code.
Wenn ich den Code so einbaue wie er ist, kommt der Fehler :
Laufzeitfehler
Ungültiges Argument.
Also hab ich in meinem jugendlichen ;-) Leichtsinn "erkannt", dass dem doch fehlt wo er die Daten her holen soll.
Und so hab ich den - wahrscheinlich - großen Quatsch hier zusammengestrickt:
Private Sub UserForm_activate()
Dim  letzte As Long, i As Long
ListBox9.Clear
With Sheet("Übersicht")
letzte=.Cells(Rows. Count, 4).End(xlUp). Row
M.Druck. listbox9. RowSource =.Name & "!" &Range(ET12:ET" & letzte). Andreas
For i = 1 To letzte
If. Cells(i,4)"" Then Listbox9.AddItem, Cells(i,4)
Next
End With
End Sub
Ich hab mich da wohl bei meiner Strickkunst etwas überschätzt.
Sorry
Viele Grüße
bassi

Anzeige
AW: Zugriff verweigert
17.09.2015 14:49:19
bassi
Hallo Rudi,
danke für deine Nachricht und den Tipp.
Klar ist es ein Haken… Sehr peinlich.
So ist das wenn man das mit dem Handy macht und nicht richtig kontolliert.
Sorry.
Und gleich nochmal sorry. Ich glaub ich hab nun großen Mist gebastelt.
Du hast in sofern Recht, dass ich RowSource gefüllt habe. Aber nicht über Eigenschaft, sondern im Code.
Wenn ich den Code so einbaue wie er ist, kommt der Fehler :
Laufzeitfehler
Ungültiges Argument.
Also hab ich in meinem jugendlichen ;-) Leichtsinn "erkannt", dass dem doch fehlt wo er die Daten her holen soll.
Und so hab ich den - wahrscheinlich - großen Quatsch hier zusammengestrickt:
Private Sub UserForm_activate()
Dim  letzte As Long, i As Long
ListBox9.Clear
With Sheet("Übersicht")
letzte=.Cells(Rows. Count, 4).End(xlUp). Row
M.Druck. listbox9. RowSource =.Name & "!" &Range(ET12:ET" & letzte). Andreas
For i = 1 To letzte
If. Cells(i,4)"" Then Listbox9.AddItem, Cells(i,4)
Next
End With
End Sub
Ich hab mich da wohl bei meiner Strickkunst etwas überschätzt.
Sorry
Viele Grüße
bassi

Anzeige
AW: Zugriff verweigert
17.09.2015 15:18:17
Rudi
Hallo,
dann lass doch die Zuweisung der RowSource weg.
Private Sub UserForm_activate()
Dim letzte As Long, i As Long
Listbox9.Clear
With Sheet("Übersicht")
letzte = .Cells(Rows.Count, 4).End(xlUp).Row
For i = 1 To letzte
If .Cells(i, 4)  "" Then Listbox9.AddItem Cells(i, 4)
Next
End With
End Sub

Gruß
Rudi

AW: Zugriff verweigert
17.09.2015 16:45:20
bassi
Hallo Rudi, Gott du hast aber auch Geduld mit mir :)
Japp. Dann sind wir ja wieder beim Ursprung.
Jetzt kommt besagtes :
Laufzeitfehler '-2147024809 (80070057)
Ungültiges Argument
markiert wird der Bereich:
Listbox9. Additem, Cells (i,4)
hm… .

Anzeige
AW: Zugriff verweigert
17.09.2015 18:00:22
Werner
Hallo,
wenn du die Code-Zeile so im Makro stehen hast wie in deinem Beitrag dann ist nach AddItem ein Komma da nicht hin gehört.
Gruß Werner

AW: Zugriff verweigert
17.09.2015 18:53:32
bassi
Verflixt nochmal Werner hab Dank, du hast Recht.
Ich bin doch ein Dussel.
Aber ich häng immernoch in den Seilen.
Es soll doch nun erst an "ET12" aufgelistet werden.
Ich bräuchte noch nen kleinen Schubs… .
Viele Grüße
bassi

AW: Zugriff verweigert
17.09.2015 19:10:34
bassi
For i = 12 To letzte
und
Cells (i,150)
bzw
Cells (i,"ET")
Haaaa… jetzt passt es :)
Hoffentlich… ;-)
Allerbesten Dank an Euch.
Viele Grüße und einen schönen Feierabend…
bassi

Anzeige
AW: Danke für die Rückmeldung. o.w.T.
17.09.2015 19:46:38
Werner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige