Userform Logik Problem

16/01/2008 - 14:44 von Alex | Report spam
Hallo meine Freunde,

meine Oberflàche befindet sich direkt auf einem Arbeitsblatt. Darauf
ist ein Button. Wenn ich diesen betàtige öffnet sich eine Userform,
welche einen Fortschritssbalken anzeigt. Drücke ich den Button Start
auf dem Userform làuft eine Prozedur ab und der Balken zeigt den
aktuellen Fortschritt an. Gibt es nun eine Möglichkeit, dass die
Prozedur automatisch ausgeführt wird, ohne den Button "Start" auf der
Userform drücken zu müssen. Sprich ich drücke den Button auf dem
Arbeitsblatt, danach öffnet sich die Userform und die Prozedur wird
direkt ausgeführt.

Gruß Alex
 

Lesen sie die antworten

#1 stefan onken
16/01/2008 - 15:57 | Warnen spam
On 16 Jan., 14:44, Alex wrote:
Hallo meine Freunde,

meine Oberflàche befindet sich direkt auf einem Arbeitsblatt. Darauf
ist ein Button. Wenn ich diesen betàtige öffnet sich eine Userform,
welche einen Fortschritssbalken anzeigt. Drücke ich den Button Start
auf dem Userform làuft eine Prozedur ab und der Balken zeigt den
aktuellen Fortschritt an. Gibt es nun eine Möglichkeit, dass die
Prozedur automatisch ausgeführt wird, ohne den Button "Start" auf der
Userform drücken zu müssen. Sprich ich drücke den Button auf dem
Arbeitsblatt, danach öffnet sich die Userform und die Prozedur wird
direkt ausgeführt.

Gruß Alex



hallo Alex,
eine Möglichkeit wàre, das UserForm_Activate Ereignis zu nutzen. Der
button Start auf dem Userform startet ja den Code, der im Click-
Ereignis des button steht, also cmdStart_Click (oder wie auch immer
das bei dir heisst). Um den im UserForm_Activate zu starten, fügst du
diesen _Click Befehl dort ein:

Private Sub UserForm_Activate()
cmdStart_Click
End Sub

Andere Möglichkeit: du legst den Code zum aktualisieren der Leiste in
eine Sub in einem Standardmodul (zB als Sub Aktualisieren()), wobei du
den Code evtl etwas anpassen musst (aus Fortschrittsbalken wird dann
Userform1.Fortschrittsbalken). Im Code des button auf der Tabelle dann

UserForm1.Show 0
aktualisieren

Hierbei wird das Userform ungebunden angezeigt, dh, es können bei
angezeigtem Form vom user Zellen bearbeitet werden.

Falls das Userform weiß/ohne Inhalt dargestellt wird, musst du in den
Code, der den Fortschrittsbalken aktualisiert, ein DoEvents einfügen.


Gruß
stefan

Ähnliche fragen