Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Listbox scrollen

Forumthread: Listbox scrollen

Listbox scrollen
25.02.2022 11:27:53
Antonio
Hallo an alle,
ich würde gerne mit ein VBA Code mein listbox scrollen zeile für zeile in abstand von 2 Sekunden bis zum letzten Eintrag und dann wieder von vorne.
Ich scrolle momenten mit ein SpinButton aber ich würde gerne es automatisch haben.
Ist sowas überhaupt möglich? zB. mit ein Timer?
Vielen Dank im Voraus
Antonio
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
wozu soll das gut sein? owT
25.02.2022 12:29:27
Rudi
AW: Listbox scrollen
25.02.2022 12:31:36
Daniel
Hi
Du kannst mit Applications.Ontime ein Makro, welches in einem allgemeinen Modul liegt zu einem bestimmten Zeitpunkt starten. Dabei darf sich das Makro auch selbst aufrufen, wodurch eine Dauerschleife entsteht.
Die Syntax wäre:
Application.OnTime Now +TimeSerial(0, 0, 2), "Makroname"
Um die Schleife zu stoppen nimmt du:
Application.OnTime NächsterZeitpunkt, "Makroname", Schedule:=False
Dabei muss der angegebene Zeitpunkt der Zeitpunkt sein, mit dem zuletzt aufgerufen wurde, dh. diesen solltest du dir in einer globalen Variablen merken.
Gruß Daniel
Anzeige
AW: Listbox scrollen
25.02.2022 13:28:04
Antonio
Hallo Rudy sorry for later,
Der ListBox zeig mir Graphiken in der Form.
Hallo Daniel,
Hier Habe ich ein Modul von Nepumuk bekommen, der sehr gut in der Excel Tabelle funzt :

Option Explicit
Option Private Module
Private ldtmNextStart As Date
Private lobjCell As Range
Public Sub StartTimer()
If ldtmNextStart = 0 Then
Set lobjCell = Tabelle4.Range("G12")
Else
If Not IsEmpty(lobjCell.Offset(1, 0).Value) Then
Set lobjCell = lobjCell.Offset(1, 0)
Else
Set lobjCell = Tabelle4.Range("G13")
End If
End If
Call Application.Goto(Reference:=lobjCell)
ldtmNextStart = Now + TimeSerial(0, 0, 2)
Call Application.OnTime(EarliestTime:=ldtmNextStart, _
Procedure:="StartTimer", Schedule:=True)
End Sub
Public Sub StopTimer()
If ldtmNextStart  0 Then
Call Application.OnTime(EarliestTime:=ldtmNextStart, _
Procedure:="StartTimer", Schedule:=False)
Set lobjCell = Nothing
ldtmNextStart = 0
End If
End Sub
Kann man umschreiben damit auch für die Form gültigkeit hat?
Wenn ja könnte ein wenig Hilfe brauchen.
LG Antonio
Anzeige
AW: Listbox scrollen
25.02.2022 23:50:24
Mullit
Hallo nochmal,
und das noch besser zusätzl. ins Formmodul:

Private Sub UserForm_Terminate()
Call Scroll_Off
End Sub
Gruß, Mullit
Anzeige
AW: Listbox scrollen
27.02.2022 10:03:41
Antonio
Hallo Mullit
Danke für dein antwort
Werde ausprobieren
Lg Antonio
AW: sauber, dann....
27.02.2022 12:36:46
Mullit
...mach ich erstmal zu.....
Gruß, Mullit
AW: .... an Mullit
01.03.2022 09:48:18
Antonio
Hallo Mullit,
Im Prinzip funzt dein Code sehr gut, sowas hatte ich gesucht.
Ich hatte vorher ein SpinButton zum scrollen verwendet, wenn ListBox1 markiert war, waren die anderen Listbox auch markiert und liefen synkron.
Ich versuche in deinem Code ListBox1 erster Eintrag zu markieren und dann zu Starten, ist aber keine Markierung sichtbar
Hier mein Versuch:

Option Explicit
Option Private Module
Private ldtmTime As Date
Public Sub Scroll_On()
'If UserForm2.ListBox1.ListIndex > 0 Then
'        UserForm2.ListBox1.Selected(UserForm2.ListBox1.ListIndex - 1) = True
'    Else
'        UserForm2.ListBox1.Selected(UserForm2.ListBox1.ListCount - 1) = True
'        UserForm2.SpinButton1.Value = UserForm2.ListBox1.ListCount - 1
'    End If
If UserForm2.ListBox1.ListIndex + 1 
Eine kleine Hilfe wäre sehr willkommen
LG Antonio
Anzeige
AW: .... an Mullit
01.03.2022 09:53:24
Antonio
....Wenn Fragen hast, bitte melden
LG Antonio
AW: FUNZT
01.03.2022 10:55:29
Antonio
Hallo Daniel,
Hallo Mullit,
Danke an euch der Code Funzt, habe an meine Bedürfnisse angepasst und siehe da Funzt.
Danke
LG Antonio
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige