Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1484to1488
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

Listbox auf letzten eintrag setzen.

Listbox auf letzten eintrag setzen.
04.04.2016 07:53:04
Chatzebuseli
Guten Morgen liebe VBA-Freunde
Ich stehe wider mal auf Kriegsfuss mit einer Listbox!
Mein Problem:
In der Sub Userform Initialized fülle ich eine Listbox folgendermassen ab:
Do While Trim(CStr(Tabelle4.Cells(blZei, lSpalte).Value)) ""
ListBox8.AddItem , 0
ListBox8.List(0, 0) = Tabelle4.Cells(blZei, 1).Value 'Schl Nr.:
ListBox8.List(0, 1) = Tabelle4.Cells(blZei, 2).Value 'Richtung
ListBox8.List(0, 2) = Tabelle4.Cells(blZei, 18).Text 'Zeit
ListBox8.List(0, 3) = Tabelle4.Cells(blZei, 5).Value 'Schiffsname
ListBox8.List(0, 4) = Tabelle4.Cells(blZei, 21).Text 'Ausfahrtszeit
ListBox8.List(0, 5) = Tabelle4.Cells(blZei, 19).Value 'Kürzel
Loop
Die neuen Einträge werden also OBERGHALB der alten in die Listbox eingefühgt.
Im laufe des Tages kommen nach und nach weitere Einträge dazu die auch alle wie gewollt oben angefühgt werden.Das funktioniert alles auch Prima.
Jetz erreiche ich aber irgend wann den Punkt,an dem die Listbox durch die Anzahl der enthaltenen Einträge eine Scrollbar bekommt. Die stellt sich aber automatisch so das der älteste bzw. die nr.1 der Einträge sichtbar ist ( auch wenn ich sie in Umgekehrter rheinefolge abfülle). Ich möchte aber das die Scrollbar auf jedenfall nach dem neu laden der Userform oben steht, also den neuesten Eintrag anzeigt.
Wie muss ich da ran gehen?
Geht das ev. mit einer setFocus oder selectetItem Funktion?
Und wenn ja wie erreiche ich das selbst wenn ich den obersten Eintrag selectiere das ich die selection wider aufheben kann ohne die Scrollbar zu verschieben?
Wer hat da eine Idee?
Griessli
Chatzebuseli

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox auf letzten eintrag setzen.
04.04.2016 08:39:53
Steve
Hallo Chatzebuseli,
hilft dir das hier weiter?
ListBox1.Selected(0) = True
lg Steve

AW: Listbox auf letzten eintrag setzen.
04.04.2016 09:41:09
Chatzebuseli
Danke Steve
Scheint zu funktionieren.
Griessli
Chatzebuseli

AW: Listbox auf letzten eintrag setzen.
04.04.2016 10:20:40
Chatzebuseli
Jetzt habe ich aber ein anderes Problem.
Die oberste Zeile wird jetzt mit einem Blauen balken angezeigt.
das möchte ich wenn möglich nicht haben.

AW: Listbox auf letzten eintrag setzen.
04.04.2016 10:34:59
Steve
Na dann nimm die Selektion anschließend wieder raus (False).
ListBox1.Selected(0) = True
ListBox1.Selected(0) = False
Es wirkt zwar primitiv, aber da mir nix besseres einfällt und trotzdem funktioniert würd ich es einfach stehen lassen.
lg Steve

Anzeige
AW: Listbox auf letzten eintrag setzen.
04.04.2016 10:38:41
Chatzebuseli
Ja habe ich gerade gemerkt das es so geht.
Danke trotzdem!

AW: Listbox auf letzten eintrag setzen.
04.04.2016 11:34:46
Chatzebuseli
So nun habe ich aber ein anderes Problem
Wenn die Userform startet ist am morgen kein Eintrag in der besagten ListBox was mir jetz einen Laufzeitfehler 380 verursacht.
Selection konnte nicht ausgeführt werden o.ä.
Was ja eigendlich auch logisch ist.
Meine Idee ist das ganze in einer If ... Then abfrage zu verschachteln damit es nur wenn Einträge in der Listbox sind, aktiv wird.
Wie mus eine Syntax also aussehen um abzufragen ob Einträge in der Listbox vorhanden sind.

Listbox füllen:
04.04.2016 11:23:24
snb

Private Sub Userform.initialize()
sn=cells(1).currentregion.resize(,21)
ListBox8.list= application.index(sn,evaulate("row(1:" & ubound(sn) & ")"),array(1,2,18,5,21, _
19))
listbox8.listindex=0
End Sub

Anzeige
evaulate--> soll : Evaluate :-) oT
04.04.2016 12:44:20
Helmut
oT

AW: evaulate--> soll : Evaluate :-) oT
05.04.2016 07:18:46
Chatzebuseli
Klappt Danke für Eure Hilfe

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige