mit Listenfeld
Ich habe mir im Excel eine mittlerweile ziemlich lange Liste
zusammengebaut und möchte in der ersten Spalte eine Art
Index/Ankerliste nach Adem Alphabet mit dem ich dann auf den
Anfang des jeweiligen Buchstaben springe.
Hi Ann,
blende dir die Symbolleiste Steuerelement-Toolbox ein. Dann wähle ein Listenfeld aus und zeichne es dir 26 Zellen hoch.
Während es noch markiert ist, mit rechts draufklicken und Eigenschaften auswählen.
Dort dann bei LinkedCell K1 und bei ListFillrange K2:K27 eingeben, Eigenschaftsfenster schließen.
Nochmals mit rechts auf das Listenfeld klicken und Code anzeigen auswählen.
Folgendes reinkopieren bei Listfeld1 Click:
Private Sub ListBox1\_Click()
r = 1 ' Reihe
s = 1 ' Spalte, A=1,B=2 usw
While Cells(r, s).Value ""
If Asc(Cells(r, s).Value) = Asc(Range("k1").Value) Then
Cells(r, s).Select
ListBox1.Top = 12.75 \* (r - 1) 'damit Box sichtbar bleibt
Exit Sub
End If
r = r + 1
Wend
End Sub
VisaulBasic Fenster schließen.
In den Bereich K2:K27 die einzelnen Buchstaben eintragen , also A B C D… Z, beachte die Großschreibung.
links oben in der SteuerungsToolbox den Entwurfsmodus beenden, Toolbox wieder ausblenden.
Anstatt K1 bzw K2:K27 kannst du jeden anderen Bereich nehmen, dient nur als Beispiel. Wenn deine Liste nicht in der A-Spalte ist oder nicht bei A1 beginnt(Überschrift) dann mußt du die Startwerte von r oder auch s korrigieren.
Gruß
Reinhard