Range von ListFillrange eines Kombinationsfeldes
26.04.2008 22:47:00
ListFillrange
ich habe für eine Anfrage in einem anderen Forum (wie sperre ich die Auswahl in einem Kombinationsfeld aus Formular) den nachstehenden Code gebastelt und laut Feedback des Anfragers scheint es auch zu funktionieren, soweit so gut.
Bei der Codeentwicklung stiess ich auf folgendes Problem, ich kann den ListFillRange eines Kombinationsfeldes auslesen und per MsgBox sehe ich dann sowas:
'Tabbele1'!$A$1:$A$6
jetzt meine Fragen:
a) Wie kann ich nun auf diesen Bereich zugreifen um z.B. die Zeilenanzahl zu ermitteln?
und das ohne Umweg, also nicht wie hier mit Split, oder sonstigemn Stringzerlegungen.
b) Wenn es für a) keine Lösung gibt, kann ich 100%ig immer davon ausgehen, daß "!" immer vorhanden ist? (mal weglassend daß jemand sein Blatt "A!!!!!" benennt *gg*)
c) kennt noch wer Pacman, oder kennt es nicht, wie auch immer, da isses:
http://www.pacman.gr/games/pacman.html
Danke ^ Gruß
Reinhard
Private Sub CommandButton1_Click()
Dim DD, Kurz
With CommandButton1
.Caption = IIf(.Caption = "Kombis sperren", "Kombis entsperren", "Kombis sperren")
For Each DD In ActiveSheet.Shapes
If DD.Name Like "Drop Down*" Then
DD.ControlFormat.Enabled = IIf(.Caption = "Kombis sperren", True, False)
Kurz = Split(DD.ControlFormat.ListFillRange, "!")
DD.ControlFormat.DropDownLines = Range(Kurz(1)).Rows.Count
'DD.ControlFormat.DropDownLines =8
End If
Next DD
End With
End Sub>/pre>