< návrat zpět

MS Excel


Téma: Jak ukončit nekonečnou smyčku? Do....Loop rss

Zaslal/a 14.11.2013 8:49

V Excelu mám pod tlačítkem následující kód:

Private Sub CommandButton1_Click()
Do
i = i + 1
Cells(1, 1) = i
Loop
End Sub

Při spuštění je tlačítko stále sepnuté a nelze vůbec nic dělat ani stisknout jiná tlačítka s příkazem End. Potřeboval bych smyčku zastavit buď stiskem stejného nebo jiného tlačítka, či klávesou. Jediné co funguje je ESC. Něco jsem našel "Doevent" ale vůbec mi nejde to zapsat, aby to fungovalo.

2. Během Loopu bych chtěl měnit i jiné parametry, například barvu fontu.......pomocí check boxu, ale vše je zamrznuté...nevím jak to pojmout. Viděl jsem aplikaci, kde vše lze měnit za chodu: http://chandoo.org/…g-pendulums/

Zaslat odpověď >

icon #016343
eLCHa
Asi byste si měl uvědomit, že toto je excel a VB ve verzi 6 ;)

Proč by někdo psal do nějaké buňky čísla a ještě při tom měnil prvky na formuláři?

Napište (nejlépe s přílohou), co chcete dělat a někdo vám poradí - ale pomocí Do...Loop to nebude ;)

Samozřejmě, když na tom budete trvat tak to nakonec uděláte, ale k čemu by to mělo být, netuším ;)citovat
#016347
avatar
To je moc otázek :-). Dal jsem to jsem zjednodušeně. Samozřejmě mezi Do a Loop bude dlouhý kód a jeho výstupy nebudou vidět jen v jedné buňce. To co budu dělat nemohu nikomu říci, proto si to musím naprogramovat a vyzkoušet sám. Kdyby to nebylo tak převratné, tak se domluvím s nějakým programátorem. Již jsem aplikaci vytvořil a hledané principy fungují, jenže narazil jsem na jistá omezení Excelu, WB i hardwaru a ty potřebuju trochu vychytat takže budu rád i za dílčí rady, pak se posunu dále. Jak to bude možné, tak se o tom dozví celý svět.citovat
#016350
Opičák
9 9 9 9 9 9 9 9citovat
#016356
avatar
Rady prosím 4citovat
#016360
avatar
Tady se řešilo něco obdobného
http://wall.cz/index.php?m=topic&id=15742&page=1#post-15901citovat
#016361
Opičák
Jak ukončit nekonečnou smyčku? Do....Loop

9 9
Příloha: jpg16361_pc_ko.jpg (30kB, staženo 26x)
16361_pc_ko.jpg
citovat
icon #016363
eLCHa
@Opičák
tohle nepomůže ;)
Ta smyčka pojede dál, jenom to prostě neuvidíte ;))
Tady pomůže jen přerušit přívod proudu ;)citovat
icon #016364
eLCHa
@Siopaulo
jenže narazil jsem na jistá omezení Excelu, WB i hardwaru
sám jste si odopověděl ;)

Protože je ten váš kód tak převratný, že ho sem nemůžete vložit, tak vystřelím od boku, abyste neřekl, že jsme na vás oškliví.

API functions

Pokud budete mít ovšem mezi Do...Loop dlouhý kód, testovat na stisk se vám bude hodně těžko ;)

A ještě jedna rada - zapomeňte na cyklus - toto vše se řeší pře události (tahle je asi jediná užitečná)citovat
#016385
avatar
Díky, za reakce...nějak jsem to pořešil. Udělal jsem si proceduru mimo tlačítko a tlačítkem ji spouštím pomocí příkazu Call...když to udělám, tak při smyčce mohu tlačit další tlačítka, která chod zastaví atd. Musím si to ještě trochu osahat, nicméně je to pro mne velký krok, i se rozpohyboval graf a vykreslují se všechny buňky jak mají. Tuším, že budu mít ještě dotazy, ale tohle je pro mne velká změna díky níž se mohu dost pohnout 3

Elcho, můžeš mi sem vložit kousek kódu (příkladu) jak tedy přes události nebo API functions?citovat

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