Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno GUI VBA - fokus cmd

Ahojky,

mám problém:

Po obslúžení ovládacieho prvku CommandButton v užívateľskom formulári VBA sa spustí kód priradený jeho udalosti Click...

Private Sub cmdTlacRozsahov_Click()
    lblCakaj.Visible = True
    Rozsahy
    lblCakaj.Visible = False
    Sheets("Rozsahy").PrintOut Copies:=1
End Sub
Rozsahy je procedúra vytvárajúca zostavu...

Počas procedúry (vytvára sa zostava a teda uplynie pár sekúnd) chcem zobraziť oznam (prvkom Label) o prebiehajúcej operácii, aby užívateľ vedel, že jeho povel sa vykonáva a musí čakať.
Label sa po vykonaní výpočtov opäť skrýva a zostava sa vytlačí...

Problémom je, že po celú dobu výkonu procedúry vyzerá Command button ako stlačený a ďalšie zmeny na monitore sú blokované (vrátane zobrazenia Labelu) až do doby, keď sa Command button "uvoľní", čo sa udeje až na úplnom konci procedúry a teda, keď už je oznam o potrebe vyčkania, bezpredmetný.
Normálne by som očakával zobrazenie kliknutia t.j. zatlačenie tlačidla, jeho vrátenie sa do štandardného (uvoľneného) stavu (keďže navyše tlačidlo myši nedržím stlačené) a vykonávanie ostatných riadkov kódu...

Medzi udalosťami Command buttonu nevidím inú rozumnú udalosť ako napr Before_Click alebo niečo podobné, čo by sa dalo využiť a nezaberá ani "nasilu" pridaný Application.ScreenUpdating=True

Vie niekto poradiť?

Odpověď na otázku

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny