našel jsem další makro jak aktualizovat KT - je založený na tom, že to makro umístí kurzor do míst kde je KT(uživatel musí definovat-makro samo nepozná kde je KT:) ) a tam spustí nějakou UNO věc... (a opravdu fugnguje)
sub obnovitKT_na_bunce_C29
rem toto makro obnovuje KT tak ze to makro samo umisti kurzor na dane misto a tam kde je kurzor tam se aktualizuje KT
nazev_listu = ThisComponent.getSheets().getByName("KT")
kurzor = ThisComponent.getCurrentController()
souradnice = nazev_listu.getCellByPosition(2,30)
kurzor.Select(souradnice)
oznacena_bunka = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(oznacena_bunka, ".uno:RecalcPivotTable", "", 0, Array()) 'mozna to tady mam spatne-mozna to co rika te "funkci RecalcPivotTable" kde je prave kurzor neni "oznacena_bunka" ale "Array".
end sub
a já bych z toho chtěl vynechat to přesouvání kurzoru a rovnu říct tomu "dispatcheru" že to má aktualizovat na bunce C29, hlavně proto,protože to přesouvání kurzoru mě přesune na ten list kde se toto děje-což nechci-ten list je jenom pro vzorce.vubec do nej nechcu koukat,a když ho skryju tak je to celé pošahané... :-(
Už jsem do toho posledního řádku zkoušel místo "oznacena_bunka" dát souřadnice "(2,29)" nebo "souradnice" aby si to vzalo souřadnice z na začátku definované proměnné "souradnice"
...a háže to např tuto hlášku:
takže nevíte někdo jak tomu dispatcherovi říct aby aktualizoval danou bunku bez toho šmrdolení s tím kurzorem?diky
Toto makro je výborné v tom, že to aktualizuje ty KT IHNED-žádné vteřinové čekání jako u toho makra předtím.
Editoval dech (26. 8. 2010 20:17:11)
LO 6.1.2.1. (x64) WIn 8 64bit 16GB RAM