A2003: VBA - Unerwünschte Programmverzweigung

13/08/2008 - 17:40 von Peter Wenzel | Report spam
Hallo,

ich habe folgendes Problem:

Für ein Formular habe ich bei dem Ereignis "Form Load" einen Code geschrieben,
der in einem Listenfeld einen Eintrag markiert.

Set ctrl = Me!lstWEWoche
i = Me!lstWEWoche.ListCount - 1
ctrl.Selected(i) = True

In dem Moment, wo der Eintrag markiert wird, der Code geht eigentlich mit anderen Dingen weiter,
hört die Ausführung dieses Makros auf, und beginnt mit der Ausführung des Makros,
welches auf das Ereignis "Beim Klicken" des gleichen Listenfeldes ausgeführt werden soll.

Mein Vorhaben war, beim Laden des Formulars in drei Listenfeldern einen Eintrag zu markieren,
um Werte für Variablen zu erhalten, die ich in einem SQL-String verwende um in den (gleichen) Listenfeldern
gefilterte Daten anzuzeigen. D.h. ich klicke einen Eintrag an, im nàchsten Feld wird dann das gefilterte Ergebnis
angezeigt usw.
Da beim Laden des Formulars normalerweise keine Eintràge markiert sind, werden auch keine gefilterten Daten angezeigt.
Dies wollte ich umgehen.
Klappt aber nicht! Mache ich was falsch?


Gruß
Peter



Bitte alle Antworten hier in die Newsgroup.
Mails nur nach Rücksprache zusenden.
 

Lesen sie die antworten

#1 Thomas Möller
13/08/2008 - 17:50 | Warnen spam
Hallo Peter,

Peter Wenzel schrieb:
Für ein Formular habe ich bei dem Ereignis "Form Load" einen Code
geschrieben,
der in einem Listenfeld einen Eintrag markiert.

Set ctrl = Me!lstWEWoche
i = Me!lstWEWoche.ListCount - 1
ctrl.Selected(i) = True

In dem Moment, wo der Eintrag markiert wird, der Code geht eigentlich
mit anderen Dingen weiter,
hört die Ausführung dieses Makros auf, und beginnt mit der Ausführung
des Makros,
welches auf das Ereignis "Beim Klicken" des gleichen Listenfeldes
ausgeführt werden soll.

Mein Vorhaben war, beim Laden des Formulars in drei Listenfeldern einen
Eintrag zu markieren,
um Werte für Variablen zu erhalten, die ich in einem SQL-String verwende
um in den (gleichen) Listenfeldern
gefilterte Daten anzuzeigen. D.h. ich klicke einen Eintrag an, im
nàchsten Feld wird dann das gefilterte Ergebnis
angezeigt usw.
Da beim Laden des Formulars normalerweise keine Eintràge markiert sind,
werden auch keine gefilterten Daten angezeigt.
Dies wollte ich umgehen.
Klappt aber nicht! Mache ich was falsch?



Du könntest eine modulweit gültige Variable verwenden. Ich nenne Sie mal
"fStart". Diese Variable setzt Du vor dem markieren der Listenfeld auf
True. Im Klick-Ereignis der Listenfelder prüfst Du den Wert dieser
Variable. Beim True brichst Du die Verarbeitung ab. Am Ende des
Onload-Ereignisses setzt Du den Wert der Variablen fStart wieder auf False.

HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen