Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Liste in Userform anzeigen
#1
Hallo!

Ich habe in Spalte "Q" Wörter stehen, die ich gerne in einer UserForm auswählen will. Super wäre es, wenn die Wörter auch noch alphabetisch von A - Z angezeigt werden, denn in Spalte "Q" sind sie immer nicht sortiert.
Vorerst lautet einmal mein Code:

Code:
Private Sub ListBox1_Click()

End Sub
Ich hoffe, dass mir jemand helfen kann.
LG
Excel Version 2016
Antworten Top
#2
hallo!

Das ist recht wenig! Bitte fertige eine Beispieldatei an um die Struktur der Tabelle und den Aufbau erkennen zu können mit deiner Userform!
Eine Menge reden, aber nichts sagen können viele...
Antworten Top
#3
Anbei ein Beispiel. Geplant ist dann in einer weiteren Ausbauphase, dass wenn ich in der Drop Down Liste etwas ausgewählt habe, dass sich das UserForm schließt und sich eine MessageBox öffnet und folgendes angezeigt wird:

- Das vorhin ausgewählte Element aus der Liste, z.B. Meinungsstudie
- daneben soll die Zahl 3 (aus der Zelle P) stehen


Angehängte Dateien
.xls   KopiePuU.xls (Größe: 292,5 KB / Downloads: 5)
Excel Version 2016
Antworten Top
#4
Hi,

anbei was mit System.Collections.Arraylist

.xlsb   sortierte_Listbox.xlsb (Größe: 19,67 KB / Downloads: 4)
lg Chris
Feedback nicht vergessen.
[Bild: v.gif]
3a2920576572206973742064656e20646120736f206e65756769657269672e
Antworten Top
#5
Bevor hier etwas geht muss das Ganze in eine vernünftige Form! Du brauchst eine Bessere Struktur! Der rechte Datenbereich lässt sich so nicht fassen und auswerten!
Eine Menge reden, aber nichts sagen können viele...
Antworten Top
#6
Wäre es ok, wenn die Spalte sortiert würde? Falls ja, ginge das so:
Code:
Private Sub UserForm_Activate()
Dim letzte As Long
letzte = Cells(Rows.Count, "Q").End(xlUp).Row

   ActiveWorkbook.Worksheets("Top30").Sort.SortFields.Clear
   ActiveWorkbook.Worksheets("Top30").Sort.SortFields.Add Key:=Range("Q6:Q" & letzte) _
       , SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
   With ActiveWorkbook.Worksheets("Top30").Sort
       .SetRange Range("P6:T" & letzte)
       .Header = xlGuess
       .MatchCase = False
       .Orientation = xlTopToBottom
       .SortMethod = xlPinYin
       .Apply
   End With
ListBox1.List = Sheets("Top30").Range("Q6:Q" & letzte).Value

End Sub


Aber um Himmels willen, schmeiß doch die ganzen Module raus. Wozu brauchst du 60 Module???
Schöne Grüße
Berni
[-] Folgende(r) 1 Nutzer sagt Danke an MisterBurns für diesen Beitrag:
  • Frogger1986
Antworten Top
#7
Hallo MisterBurns!

Danke sehr für die schnelle Antwort und den Code, schaut schon sehr gut aus. Meine Frage wäre nun, geht das nun auch als Drop Down Feld zum Auswählen, oder geht das nicht?
Des weiteren bräuchte ich dann, nachdem ich was ausgewählt habe, dass sich eine MessagBox öffnet und in dieser soll dann folgendes angezeigt werden:

- was ich gerade ausgewählt habe
- der Wert links daneben von Spalte P
Excel Version 2016
Antworten Top
#8
Gehen tut vieles. Aber wieso schreibst du dann vorher von einer Listbox und nicht sofort, dass du ein Dropdown willst? Und wieso rückst du mit der Info für die Messagebox auch erst jetzt raus? Ich habe nämlich keine Lust auf Salamitaktik. Daher sage jetzt, was du dir konkret noch so alles vorstellst.
Schöne Grüße
Berni
Antworten Top
#9
Tut mir leid, Listbox war ein Fehler von mir. Ich dachte, dass es sich hier um eine Drop Down Liste handelt, aber anscheinend tut es das nicht. Das mit der Messagebox habe ich als Ergänzung um 10:04 geschrieben, dass ich dann auch noch haben will.
Sonst brauche ich nichts. Wäre super, wenn du mir noch einmal helfen könntest.

LG

Thomas
Excel Version 2016
Antworten Top
#10
Alles klar. Dann erstelle auf deiner Userform ein Dropdownfeld. Dieses wird standardmäßig "ComboBox1" heißen, von diesem Namen gehe ich jetzt aus.
Ersetze die Zeile
Code:
ListBox1.List = Sheets("Top30").Range("Q6:Q" & letzte).Value
durch
Code:
ComboBox1.List = Sheets("Top30").Range("Q6:Q" & letzte).Value

Zusätzlich noch diese Prozedur einfügen (direkt unter der vorherigen Prozedur)
Code:
Private Sub ComboBox1_Change()
Dim Suche As Range

Set Suche = Columns("Q").Find(what:=ComboBox1.Value, lookat:=xlWhole)
MsgBox "Ausgewählter Wert ist " & ComboBox1.Value & " " & Cells(Suche.Row, "P")
End Sub
Schöne Grüße
Berni
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste