Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1556to1560
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

Userform zwei Listboxes gemeinsam scrollen

Userform zwei Listboxes gemeinsam scrollen
12.05.2017 17:20:42
Peter
Hallo ihr Excelspezialisten,
jetzt habe ich eine für mich gesehen spezielle Frage.
Ich habe eine UF mit zwei Listboxes. Ist es möglich, dass diese synchron gescrollt werden können?
Besten Dank für Eure Hilfe.
Gruss
Peter

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Userform zwei Listboxes gemeinsam scrollen
12.05.2017 17:28:13
ChrisL
Hi Peter
Der Chef-Googler schlägt zu ;)
https://www.experts-exchange.com/questions/22847861/vba-synchronize-2-listbox-scrollbars.html
Private nFocus As Long

Private Sub CommandButton1_Click()
For X = 1 To 300
ListBox1.AddItem "abc " & Rnd()
ListBox2.AddItem "abc " & Rnd()
Next X
Do While UserForm1.Visible
DoEvents
If nFocus = 1 Then
ListBox2.TopIndex = ListBox1.TopIndex
ElseIf nFocus = 2 Then
ListBox1.TopIndex = ListBox2.TopIndex
End If
Loop
End Sub

Private Sub ListBox1_Enter()
nFocus = 1
End Sub

Private Sub ListBox2_Enter()
nFocus = 2
End Sub

Ich hätte nicht gedacht, dass es geht und würde auch nicht zu solchen "Spielereien" raten. Alternative: ListBox mit zwei Spalten.
cu
Chris
Anzeige
AW: Userform zwei Listboxes gemeinsam scrollen
13.05.2017 03:45:42
Peter
Guten Morgen Chris,
besten Dank für Deine Antwort. Ganz blicke ich noch nicht durch, wie ich dies installieren soll.
Warum würdest Du zu solchen "Spielereien" nicht raten?
Problem ich habe eine Tabelle zum Ausfüllen mit 41 Spalten. Diese soll zur Bearbeitung betrachtet werden können. Ich habe hierzu eine Userform mit zwei Listboxes angelegt.
ListBox1 mit Spalte A bis Spalte U
ListBox2 mit Spalte A und Spalte V bis Spalte AO.
Jeweils ca. 70 bis 100 Zeilen.
Diese beiden ListBoxes sind untereinander und sollten über eine der beiden synchron gescrollt werden.
Daher meine spezielle Frage!!!
Oder kannst Du mir eine andere Lösung für mein Problem benennen?
Besten Dank für Deine Hilfe.
Gruss
Peter
Anzeige
AW: Userform zwei Listboxes gemeinsam scrollen
13.05.2017 08:33:39
Hajo_Zi
Hallo Peter,
wähle einen Eintrag aus und Listbox2.listindex=listbox1.listindex

AW: Userform zwei Listboxes gemeinsam scrollen
13.05.2017 17:30:38
Werner
Hallo Peter,
@Chris: nette Spielerei
wie befüllst du denn deine beiden Listboxen? Mit RowSource im Eigenschaftenfenster der jeweiligen ListBox?
Ich habs mal getestet, funktioniert tatsächlich - hätte ich auch nicht gedacht.
Ich habe zum Testen eine Userform1 angelegt mit zwei ListBoxen -ListBox1 und ListBox2
Die beiden ListBoxen werden über das jeweilige Eigenschaftenfenster mit RowSource mit Daten gefüllt.
Den folgenden Code komplett ins Codefenster der Userform1 kopieren:
Doppelklick auf die UserForm1 und Code dann rechts ins Codefenster kopieren.
Private nFocus As Long
Private Sub ListBox1_Enter()
nFocus = 1
End Sub
Private Sub ListBox2_Enter()
nFocus = 2
End Sub
Private Sub UserForm_Activate()
Do While UserForm1.Visible
DoEvents
If nFocus = 1 Then
ListBox2.TopIndex = ListBox1.TopIndex
ElseIf nFocus = 2 Then
ListBox1.TopIndex = ListBox2.TopIndex
End If
Loop
End Sub
Gruß Werner
Anzeige
AW: Userform zwei Listboxes gemeinsam scrollen
14.05.2017 10:10:33
ChrisL
Hi Peter
Probiere mal Werners Variante, da ist der Code schon im Activate-Ereignis integriert.
Tabellen und Steuerelemente bieten standardmässig schon unzählige Gestaltungsmöglichkeiten. In deinem Fall wäre eine mehrspaltige ListBox die bessere Wahl, wobei ich dein Problem mit den 40+ Spalten noch nicht kannte.
Vom Standard abweichende Lösungen sind nicht immer intuitiv und (liegt vielleicht an mir) bleiben meistens ein "gebastel". Im vorliegenden Code läuft permanent eine Endlosschleife damit auf das Scrollen reagiert werden kann. Kein Problem, bis es plötzlich doch zum Problem wird, weil es z.B. einen anderen Prozess stört.
Wenn eine Tabelle so gross ist, dass man darin navigieren muss, dann ist das Tabellenformat perfekt. Mit Autofilter können die meisten umgehen und Ctrl+F kennt inzwischen auch jeder. Zugegeben nicht so sexy wie zwei synchronisierte ListBox, aber dafür stabil, einfach, wartungsarm... ;)
cu
Chris
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige