Děkuju,
pročtu si to a zamyslím se nad tím, znovu podotýkám, že je to můj první případ a nemám zkušenosti, trápil jsem se nad tím dlouho, než se to vůbec rozběhlo. Studoval jsem vývojáky ještě za krále klacka a není to můj denní chleba. Ale už teď vidím, že tahle úprava s cyklem na konci znamená zápis do stále stejné buńky (1,i+4). Můj záměr je trvale naplnit 10řádkový seznam v Calcu a zároveň zajistit, aby po každém vložení nové položky do tohoto seznamu se okamžitě objevila nová položka v listboxu v témže dialogu a zároveň makro kontrolovalo, zda počet položek nepřekročil povolené množství (zde 10). Při první iniciaci zároveň kontroluji, zda je vůbec nějaká položka zadána. Cyklus Do-While na konci odstaví kontrolu naplnění seznamu a nezapisuje nové položky do Listboxu. proto jsem volil rekurzi procedury, která po každém vložení doplní Listbox a zároveň provede kontrolu (později chci ještě vestavět kontrolu na duplicitu položek). Z téže procedury budu později řešit i odchod do další práce s vloženými položkami (např. pohyby na příslušných účtech). Volání této rekurze ovšem neproběhne nijak často, jedná se o seznam bankovních účtů a ty se nepřidávají každý den, spíše to bude jednorázová záležitost; je obvyklé obchodovat maximálně se třemi účty (i kontrola na přeplnění je spíše alibi), takže toto zpětné volání nijak nezatíží běh programu. Rozhodně vyzkouším navrženou úpravu SELECT-CASE + příkazy VISIBLE a EndDialog
PS:
Omlouvám se ještě jednou všem (především panu NEUTR), kteří měli dojem, že jsem nějak agresivní, na něco si stěžuji nebo si něco vynucuji - pokud to tak vypadalo, je to mylný dojem a rozhodně to nebyl můj úmysl. Jsem rád, že mám s kým konzultovat, každý má na věc jiný pohled a pokud z toho vyplyne přínos a elegance, rád se poučím nebo to použiju jinde a jindy. Budu rád, pokud mi někdo sdělí zkušenosti s příkazem ENDEXECUTE(), našel jsem ho v nějaké anglické příručce, komentář mi nebyl jasný. (Netrvám na něm dogmaticky, ale příkaz mi funguje).
Martin