Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
384to388
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
384to388
384to388
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Listbox; Inhalt nach Vrogabe

Listbox; Inhalt nach Vrogabe
23.02.2004 10:04:57
ray
Guten Morgen liebes Forum,
ich habe eine namensliste, die von a-z sortiert ist.
ich habe 24 CommandButton mit A, B, C usw.
Bei click soll in einer Listbox die Eintrage mit dem jeweiligen Buchstaben angezeigt werden.
ich habe folgenden Code erstellt und würde jetzt gern sagen:
zeige Bereich an wo der Name mit "a" beginnt und höre auf wo der Name mit "b" beginnt. (in der namensliste kommen regelmäßg namen dazu)


Private Sub CommandButton9_Click() 'bei click soll
Dim lR_LB%
ListBox1.RowSource = "liste!a1:c300"
ListBox1.ListIndex = 1
End Sub

Vielen Dank und Grüße aus Hamburg mit -3 Grad
Ray

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Listbox; Inhalt nach Vrogabe
23.02.2004 11:02:58
Alex K.
Hallo Ray,
hier mal ein Makro für das Setzen der Listbox. Gehe mal davon aus, dass die Namen in Spalte "A" stehen und der Bereich von A bis C eingetragen werden soll.
Zum Aufruf der Funktion den gesuchten Buchstaben übergeben
ShowCharacter("a")

Private Sub ShowCharacter(Char As String)
Dim stRng       As Double
Dim endRng      As Double
Dim i           As Integer
On Error Resume Next
With ActiveSheet
stRng = WorksheetFunction.Match(Char & "*", .Range("A:A"), 0)
If Err.Number <> 0 Then
Err.Clear
MsgBox "Es wurden keine Einträge für den Buchstaben '" & Char & "' gefunden.", _
vbInformation, "Auswahl Bereich"
Exit Sub
End If
For i = Asc(Char) + 1 To Asc("z")
endRng = WorksheetFunction.Match(Chr(i) & "*", .Range("A:A"), 0)
If Err.Number <> 0 Then
Err.Clear
End If
If endRng > 0 Then
Exit For
End If
Next i
If endRng = 0 Then
endRng = .Cells(.UsedRange.Rows.Count, .Range("A:A").Column).End(xlUp).Row + 1
End If
ListBox1.RowSource = "liste!A" & stRng & ":C" & endRng - 1
End With
End Sub

Noch ein Hinweis, habe hier bewusst die Funkton "Match" (Vergleich) genommen, da die Funktion Range.Find mit dem Kriterium "a*" nicht nur Albert, sondern leider auch "BertA" findet :-(. Unterscheidet also nicht nach Wortanfang und -mitte.
Anzeige
AW: Fehlermeldg wenn so
23.02.2004 13:46:29
ray
Hi Alex,
hab den code kopiert und starte ihn mit click auf commandbutton mit application.run"ShowCharacter"
kriege dann die Fehlermeldung
...kann Makro ShowCharacter nicht finden
Was mach ich falsch?
geht doch... Sorry, Sorry,Sorry,war zu blöd... :-)
23.02.2004 13:53:54
ray
s
Gehe davon aus, dass du Lösung funktioniert :-) oT
23.02.2004 14:52:38
Alex K.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige