Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1792to1796
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
Listbox als Dropdown
16.11.2020 16:25:01
Martin
Hallo zusammen, vielleicht kann mir wer helfen.
Also ich habe eine Excel Datei in welche 20 identische Reihen aufgeführt sind. In diesen Reihen werden vereinzelte Cellen per Listbox welche sich unter der Celle öffnen sobald man diese anwählt. (Ich weiß das ganz geht auch per Dropbox die sich automatisch öffnen würde, aber Dropboxen find ich nicht schön mit dem Pfeil und man kann die Schriftarten nicht ändern). Jede dieser Listboxen haben ein Eigenen Quellcode zu Öffnen mit und zum übertragen des Textes in die Celle
If Target.Address(False, False) = "B8" Then (jede Celle hat diesen Code, öffnen und schließen)
ListBox81.Visible = True
Else
ListBox81.Visible = False
End If
und zum beschreiben der Celle:

Private Sub ListBox81_Change()
Dim i As Integer
Dim Reso As String
Dim y As Integer
With ListBox81
For i = 0 To .ListCount - 1
If .Selected(i) Then
y = y + 1
Select Case y
Case Is = 0
Reso = ""
Case Is = 1
Reso = .List(i)
Case Is > 1
Reso = Reso & ", " & .List(i)
End Select
End If
Next i
ActiveSheet.Range("B8").Value = Reso
End With
End Sub

Kann man das ganze irgendwie zusammen setzen? Verkürzen? Die der Code für 180 Celle recht lag ist.
Die Eingabe kann dann also über die sich öffnenden Listboxen erfolgen, oder über eine Userform (ich weiß das ist eigentlich auch Doppeltgemoppelt, ist wenn die Tabelle fast voll ist etwas übersichtlicher).
Mein Problem ist jetzt, dass wenn ich eine Anzahl von Listboxen direkt im Tabellenblatt überschreite, bekomme ich sobald ich die Userform öffnen eine Fehlermeldung:
(Laufzeitfehler'-2147467259(80004005) Eigenschaft Text konnte nicht abgerufen werden.)
Sobald ich auf "Debuggen" gehe kommt felher in der Zeile
"If ListBox1.Text = Trim(CStr(Tabelle3.Cells(lZeile, 1).Value)) Then"
Das ganz soll alles über festgelegter Eingabe laufen, da auf anderen Tabellenblättern noch Datenbanken und Tabellen und und und sind.
Muss ja zugeben, kannst man sich vielleicht denken, dass ich ein paar Sachen weiß aber ich mir auch ein paar Zeilen auf m Netz gesucht habe und angepasst habe.
Vielen Dank im Voraus

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox als Dropdown
16.11.2020 16:42:12
ralf_b
vielleicht reicht ja auch nur eine Listbox, die man immer auf die richtige Stelle schiebt.

For i = 0 To .ListCount - 1
If .Selected(i) Then
if Reso = "" then
Reso = .List(i)
else
Reso = Reso & ", " & .List(i)
End If
Next i

Korrektur :)
16.11.2020 16:43:21
ralf_b
vielleicht reicht ja auch nur eine Listbox, die man immer auf die richtige Stelle schiebt.

For i = 0 To .ListCount - 1
If .Selected(i) Then
if Reso = "" then
Reso = .List(i)
else
Reso = Reso & ", " & .List(i)
End If
End if
Next i

Anzeige

68 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige