Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1848to1852
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
Userform mit DragAndDrop zw. Listboxen
26.09.2021 17:12:32
Tim
Hallo zusammen,
ich habe ein Userform mit 1 Listbox mit verschiedenen Werten und 4 Listboxen. Zwischen diesen Boxen sollen die Werte per drag and drop hin und her geschoben werden können. Die Werte dürfen immer nur in einer der Listboxen vorhanden sein.
https://www.herber.de/bbs/user/148277.xlsb
Hat jemand vielleicht eine Idee, wie das umgesetzt werden kann?
Ich habe hier und da schon diverse Möglichkeiten gefunden, leider aber nichts, was die Werte verschiebt und nicht nur kopiert. Was mein Wissen über Userforms angeht, stehe ich noch ziemlich am Anfang – von daher wäre ich über Hinweise und kleine Erklärungen sehr dankbar.
Vielen Dank für eure Mühen!
Tim

20
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
26.09.2021 22:11:08
ralf_b
nett von dir uns nicht an deinen bisherigen Fehlversuchen teilhaben zu lassen.
Erspart ne Menge Lesestoff.
Deshalb Hier etwas für dich. Kann ja nicht wissen ob du das schon kennst. https://jkp-ads.com/Articles/ExcelUserformDragDrop.asp
AW: Userform mit DragAndDrop zw. Listboxen
26.09.2021 23:42:01
Tim
Hallo ralf_b,
danke für deine Antwort. Die Seite hatte ich mir auch schon angeschaut, aber da fehlt es mir schlichtweg an breiterem Wissen ... Aber darum frag ich ja hier nach.
Den Code aus meiner Datei https://www.herber.de/bbs/user/148282.xlsb (jetzt ist er mit drin) habe ich aus einem Forum kopiert und angepasst. Einen Teil davon kann ich nachvollziehen, da genügend kommentiert wurde.
Was mir jetzt fehlt ist der Teil, wo der Eintrag nach dem Verschieben aus der Liste entfernt wird, nachdem er in der neuen Liste eingefügt wurde.
Beste Grüße
Tim
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 09:51:26
ralf_b
Moin,
Das Beispiel von JKP (die Zipdatei) funktioniert bei mir, aber beim Code aus dem Beitrag Wird auch der Wert aus der Quelle nicht gelöscht. Ich habe nicht herausbekommen woran es liegt. Aber ich bin auch kein Spezialist was Klassenprogrammierung angeht.
Fakt ist aber das solche Drag and Dropgeschichten nicht zum VBA Excel Tagesgeschäft gehören. Ich bezweifele das du hier oder in anderen Foren viel Feedback bekommen wirst. Das ist nicht mal eben so zusammengeklickt. Der Rahmen für Code für Lau bzw. Hilfe zur Selbsthilfe wird da locker gesprengt.
Ich schätze du kommst schneller zum Zie wenn du weniger ambitionierte Lösungen anstrebst. z.b. mittels Buttons die Elemente verteilen.
Trotzdem toi toi toi.
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 14:34:28
Mullit
Hallo,
Du brauchst nur noch über den ListIndex der 1. Box per .RemoveItem das Element entfernen, hab Dir das mal anhand des altbek. M$-Bsp zu Drag&Drop in die Datei gepackt:
https://docs.microsoft.com/en-us/office/vba/language/reference/user-interface-help/listbox-control-dataobject-object-mousemove-event-startdrag-settext-methods-exam
https://www.herber.de/bbs/user/148290.xlsm
Gruß, Mullit
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 16:25:06
Herbert_Grom
Hallo Mullit,
das ist ja man geil! VIELEN Dank! So habe auch ich noch wieder etwas dazu gelernt!
Servus
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 22:50:00
Mullit
Hallo Herbert,
ja sauber, Danke fürs Feedback, ist schon cool, dass sowas in VBA geht, allerdings nur mit Text, in VB.NET oder auch mit einigen VB6 Controls geht da auch was mit Objekten, wenn ich mich richtig erinnere...
Gruß, Mullit
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 18:29:59
Tim
Hi Mullit,
großartig! Das hatte ich gesucht, Danke Dir!
Jetzt ist aber doch noch eine Kleinigkeit aufgeploppt:
Ich habe den Code für das Verschieben von links nach rechts nochmal kopiert und für rechts nach links angepasst. Klappt auch.
Aber:
Wenn ich ein paar Werte nach rechts verschoben habe und versehentlich in der Listbox doppelklicke oder verschiebe, holt es sich den noch markierten Wert aus der Nahbarlistbox und ersetzt aber deren Wert mit dem Wert aus der eigentlichen Box (ich verschiebe Nr4 nach rechts, dieser ist noch blau hinterlegt; ich nehme Nr8 aus der linken Box und verschiebe Nr8 nach unten; Nr 8 gibts links doppelt, Nr4 aus rechter Box ist weg).
https://www.herber.de/bbs/user/148295.xlsb
Kann man die Werte nach dem Verschieben abwählen oder das irgendwie anders verhindern?
Beste Gruesse
Tim
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
28.09.2021 12:21:17
Tim
Wow, Danke Mullit!
Eine (vielleicht) letzte Frage noch:
Wie kann ich beim Initialisieren die Werte aus Tabelle1 von A2:A7 mit deinem Code einlesen?
Bis jetzt hatte ich das über
UserForm1.ListBox1.RowSource = "A2:A7"
eingelesen, dass beißt sich aber im restlichen Code verständlicherweise mit "pvargItem" und "pvargIndex".
Beste Grüße
Tim
AW: Userform mit DragAndDrop zw. Listboxen
28.09.2021 18:20:47
Mullit
Hallo Tim,
null Problemo, einfach als Array einlesen, hab noch einen kl. Fehler entfernt:
https://www.herber.de/bbs/user/148326.xlsb
Gruß, Mullit
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
28.09.2021 18:35:42
Mullit
Hallo nochmal,
so ein Schweinepriester hehe, da gab's immer noch einen Runtime-Error, but now finally ;-):
https://www.herber.de/bbs/user/148327.xlsb
Gruß, Mullit
AW: Userform mit DragAndDrop zw. Listboxen
28.09.2021 19:38:26
Tim
Vielen Dank, funktioniert super!
Beste Grüße
Tim
AW: Userform mit DragAndDrop zw. Listboxen
29.09.2021 10:16:04
Tim
Hallo noch mal,
jetzt hab ich doch noch eine Frage ... Eigentlich wollte ich es vermeiden, doch jetzt stellt sich raus, dass es so doch besser gehen könnte:
Wenn die Listbox1 mit Werten aus mehreren Spalten befüllt wird, klappt das so nicht:
ListBox1.List() = Range("A2:D10").Value
Oder geht das nur über AddItem?
https://www.herber.de/bbs/user/148339.xlsb
Wenn dann die Werte aus einer Zeile in Listbox2 verschoben werden, müssten die Werte aus den Nachbarspalten auch mit übertragen werden. Kann man die ganze Zeile sozusagen in einen Container packen und den komplett verschieben? Ich wollte erst die Spalten miteinander verketten, aber da alle Werte von unterschiedlicher Breite sind, sieht das ziemlich verschroben aus.
Beste Grüße
Tim
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
29.09.2021 20:40:23
Tim
Einen RIESEN Dank, Mullit!!!
Erstaunlich, was da so alles geht in Excel!
Leider versteh ich nur noch Bahnhof in den letzten 2 Subs ... Könntest du noch ein paar Kommentare anfügen, was da gerade in der Zeile passiert?
Vielen Dank und beste Grüße
Tim
AW: Userform mit DragAndDrop zw. Listboxen
29.09.2021 23:04:34
Tim
Jetzt steh ich bissl aufm Schlauch ...

Private Sub UserForm_Initialize()
ListBox1.List() = Range(Cells(2, 1), Cells(Cells(Rows.Count, 1).End(xlUp).Row, 3)).Value
End Sub
Im Code steht die "3" für die Anzahl der Spalten, da ich noch mehr Spalten eingefügt habe, änderte ich die "3" in eine "6". Leider passiert da aber nichts. Mit einer "2" für nur 2 Spalten klappts ...
Ich bin ratlos.
Woran liegt das?
Beste Grüße
Tim
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
30.09.2021 00:03:07
Mullit
Hallo,
das ist der einfachste Part, Du mußt nur ColumnCount für die angez. Spalten im Eig.-schaftsfenster der Listboxen auf 6 hochsetzen...;-)
Gruß, Mullit
AW: Userform mit DragAndDrop zw. Listboxen
30.09.2021 00:30:44
Mullit
ach ja, Du kannst die Spalten für bel. Pos. im Init-Event auch dynamisch anpassen, häng ich nochmal an, Erklärungen anbei...;-)
https://www.herber.de/bbs/user/148355.xlsb
Gruß, Mullit
AW: Userform mit DragAndDrop zw. Listboxen
30.09.2021 21:41:36
Tim
Super! Funzt alles!!!
Eingangs schrieb ich ja schon mal, dass ich, was Userforms angeht, noch am Anfang stehe.
Leider scheiterts an der hoffentlich letzten Spezifizierung.
Textbox2 befindet sich jetzt auf einer Multipage. Leider klappts dann mit dem Verschieben zurück in Listbox1 nicht mehr ...
Beste Grüße
Tim
Anzeige
AW: Userform mit DragAndDrop zw. Listboxen
27.09.2021 09:30:35
Herbert_Grom
Hallo Tim,
ich weiß ja, dass ich vieles von Excel nicht weiß, auch nach 27 Jahren nicht. Und deshalb weiß ich auch nicht, dass Werte per drag and drop zwischen ListBoxen hin und her geschoben werden können. Aber ich bin wirklich sehr gespannt, da ich mich echt freue, nach wie vor, immer wieder noch Neues in Excel dazuzulernen!
Servus

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige