AW: ListIndex
20.10.2005 19:23:29
Heiko
Hallo Gregor,
nettes Phänomen das, es ist zumindest wohl kein Programmfehler deinerseites.
Denn wenn du die Zellen wo du Doppelklickst mal so legst, das sie nicht hinter dem Userform sind, also z.B. die Spalten O, P, Q, R ganz links in Fenster und dann einen Doppelklick machst wird wie gewünscht keine Zeile markiert.
Klickst du aber so auf eine Zelle das bei öffnen des Userforms die Zelle hinter dem Userform liegt dann wird eine Zeile markiert. Schön zu sehen wenn du verschiedene Zeilen im Tabellenblatt doppelklickst, dann wird nämlich immer die in der Listbox markiert die genau vor der doppelgeklickten Zeile im Tabellenblatt liegt.
Scheint also irgendwie daran zu liegen das der Doppelklick noch im Mauspuffer ist und auf das Userform angewendet wird.
Na, noch alles klar ?!
Hab ein bisschen rumprobiert und konnte das nicht wirklich abstellen, ausser mit einer ziemlich unprofessionellen Holzhammermethode, guckst du hier.
Private Sub UserForm_Initialize()
Application.Wait Now + TimeValue("0:00:01")
lstDebicodeHans.RowSource = "DebicodeHans!E2:G128"
lstDebicodeHans.ListIndex = -1
End Sub
Private Sub UserForm_Initialize()
Application.Wait Now + TimeValue("0:00:01")
lstDebicodeMax.RowSource = "DebicodeMax!E2:G200"
lstDebicodeMax.ListIndex = -1
End Sub
Damit wird nach dem initialisieren eine Sekunde gewartet bis es weiter geht, dann wird keine Zeile in der Listbox mehr markiert.
Wenn das reicht, dann nimm es. Sonst müsste man mal schauen ob ein anderer ne bessere Idee hat.
Gruß Heiko
PS: Rückmeldung wäre nett