Andreas: Access VBA: Listbox scrollen

Hallo,

ich hab folgendes Problem:
Ich habe ein Access Formular mit einer Listbox in der eine Tabelle aufgebaut wird (ListBox.Column(x,y) = "Bla").
Diese Tabelle kann sehr lang werden. Nun habe ich eine Suchen-Option eingefügt, die nach einem bestimmten Eintrag sucht und ihn per (ListBox.Selected(EintragZeile) = true) highlighted. Das Problem ist nun aber, dass die Anzeige nicht zu diesem Eintrag scrollt, sondern stehenbleibt. Die sendKeys-Funktion ist dabei Mist, weil mit {Down} dauert es zu lange und mit {PGDN} geht es nicht, weil das zu ungenau wird.

Frage: Gibt es eine Möglichkeit die Ansicht der Liste so springen zu lassen, dass die neu markierte Zeile ganz oben steht?

Irgendwie blöd zu erklären. Ich hoffe, ihr habt verstanden was ich meine!

Danke für eure Hilfe!

A.

  1. Hallo!
    Das Problem ist nun aber, dass die Anzeige nicht zu diesem Eintrag scrollt, sondern stehenbleibt. Die sendKeys-Funktion ist dabei Mist, weil mit {Down} dauert es zu lange und mit {PGDN} geht es nicht, weil das zu ungenau wird.

    Frage: Gibt es eine Möglichkeit die Ansicht der Liste so springen zu lassen, dass die neu markierte Zeile ganz oben steht?

    Also innerhalb eines ListViewControl hast Du ein ListItem-Objekt. Dessen Collection wiederum hat die EnsureVisible-Methode.
    Ob das auch für das ältere Listbox-Objekt zutrifft weiß ich leider nicht.
    Beste Grüße
    Viennamade

    1. Hallo!

      Frage: Gibt es eine Möglichkeit die Ansicht der Liste so springen zu lassen, dass die neu markierte Zeile ganz oben steht?

      Also innerhalb eines ListViewControl hast Du ein ListItem-Objekt. Dessen Collection wiederum hat die EnsureVisible-Methode.
      Ob das auch für das ältere Listbox-Objekt zutrifft weiß ich leider nicht.

      Ich hab jetzt bei MS gesurft. Nein, eine Listbox hat kein Collection-Objekt. Aber sie hat die List-Property-Eigenschaft. Siehe http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vb98/html/vbprolistx.asp. Das Beispiel bezieht sich zwar auf eine Combobox, sollte aber für Listbox dito funktionieren.

      Beste Grüße
      Viennamade

      1. Danke für den Aufwand!
        Ist zumindest erstmal ein Ansatz. Mal sehen, wie weit ich damit komme!

        A.