< návrat zpět

MS Excel


Téma: doba zobrazení form. rss

Zaslal/a 12.9.2022 12:47

Zdravím.
Potřeboval bych docílit toho, že po otevření formuláře /obsahuje vesměs jen informativní hodnoty/ se tento formulář uzavře po uvedené době a zbývající čas se bude zobrazovat graficky pruhem/např:
1. prostřednictvím ProgressBar1
2. probarvujícím se pruhem Label2
3. do Label3 se i ukáže kolik zbývá z celkového času. např 8/10 8sec z 10s atd
Děkuji za pomoc.
P

Příloha: zip53372_doba-zobrazeni.zip (17kB, staženo 9x)
Zaslat odpověď >

Strana:  1 2   další »
#053384
elninoslov
+- autobus ...
Příloha: zip53384_doba-zobrazeni.zip (21kB, staženo 7x)
citovat
#053392
avatar
Děkuji, tak jsem si to představoval.

Ještě detail, nezávisle na to Pruhu, chci ve formulářích nechat měnit i barvu např Label1 po určeném časovém intervalu, třeba 0,5 vteřiny/zkrátka aby to "blikalo" .Ale nevím jak a kam bych to měl napsat, do Initialize formuláře, nebo Activate ?

.. něco jako :
UserForm1.lblSeconds.BackColor = &HFF80FF 'ruzova &H00FF80FF&
UserForm1.lblSeconds.BackColor = &HFFC0C0 'FIALOVA

Díky
p
Příloha: zip53392_doba-zobrazeni.zip (20kB, staženo 6x)
citovat
#053398
elninoslov
No ak to chcete na časti menšie ako 1s (obmedzenie Application.OnTime) tak jedine API Timer. Toto som otestoval na E2010-32bit a E2019-64bit
Příloha: zip53398_doba-zobrazeni-api.zip (25kB, staženo 8x)
citovat
#053405
avatar
Tohle přeblikávání mi bohatě stačí,
jen bych to potřeboval víc pochopit, a´t si to aplikuju i jinam.

Mohl by jste osvětlit k čemu jsou a proč:
Public Seconds As Integer
Public SemiSeconds As Integer
Public AllSeconds As Integer
Public AllSemiSeconds As Integer
Public TimerID As LongPtr

a obecně ten princip, co který řádek provede?

A Když budu chtít aby se form.otevřel , rozblikal a neukončil se,až pokud ho sám nezavřu, stačí pouze smazat tohle?

..If SemiSeconds >= AllSemiSeconds Then Unload UserForm1 ?

...bude form reagovat na další tlačítka spouštějící jiná makra co si tam dám atd? Nemusím ty timery nějak ukončovat?

Pcitovat
#053406
elninoslov
To myslíte Vážne, že neviete na čo slúži premenná Seconds a AllSeconds??? Nechceli ste náhodou počítať sekundy?
...
Veď ste chcel, aby sa formulár zatvoril po ubehnutí času. Teraz chcete presný opak.
Timer sa MUSÍ ukončiť. Či už na tom riadku po dopočítaní času alebo v Terminate formulára.

PS: Je to aj v popise v makre, ale ešte raz: Nemôžete meniť tie milisekundy bez rozmyslu. Je to celé nastavené podľa požiadavky na 0,5 sekundové úseky, teda sa kontroluje každý druhý úsek po 0,5 sek, že nastala celá sekunda. Na to je tam toIf SemiSeconds Mod 2 = 1 Then
Pri zmene MILISECONDS treba preprogramovať počítanie, kedy nastala celá sekunda. Chápeme sa?
Příloha: zip53406_doba-zobrazeni-api.zip (24kB, staženo 13x)
citovat
#053412
avatar
..a jak by vypadal kod Jen pro to, že se po otevření formuláře Bude blikáním zvýrazňovat nějaký prvek/label?
..bez odpočítávání času, jen prostě visuálně zvýraznit.
Bude to tolik příkazů jak v předchozích variantách?citovat
#053415
elninoslov
Samozrejme že nie. Veď väčšina omáčky je tam samozrejme kvôli počítaniu a zobrazovaniu požadovaných vecí. Ak len blikanie, tak takto.
Příloha: zip53415_blikanie-systemovy-casovac-api.zip (21kB, staženo 10x)
citovat
#053417
avatar
super, díkycitovat
#053418
avatar
Ještě poprosím jeden dotaz.
Když si otevřu sešit a mám ho otevřený celý den,průbežne s ním pracuji, je možné naprogramovat nějakou proceduru, která např. za předdefinovaný čas např.2 hodiny, zobrazí nejaký formulář s upozorněním, že mám něco udělat? Nebude to blokovat nějak práci se sešitem, nebo možnost spouštění jiných maker v tomto sešitu...když to bude na pozadí počítat ten čas?citovat
#053421
elninoslov
Upozornenie vybehne, aj keď je spustené iné makro. Tu je príklad.
Aktivujte si v
Workbook_Open
Workbook_BeforeClose

variant, ktorý chcete.
Příloha: zip53421_upozornenie-po-case.zip (93kB, staženo 12x)
citovat

Strana:  1 2   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje