Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  157 158 159 160 161 162 163 164 165   další » ... 286

Vzorco-pokus č.1

Nie, problém je myslím inde. Vy robíte novú inštanciu Excelu, teda nemôžete použiť z Vašej hlavnej inštancie Application.Run "'" + poleNazvu(c) + "'" + "!makro25"
do druhej inštancie xlApp. Musíte dať
xlApp.Run "'" + poleNazvu(c) + "'" + "!makro25"

Ja som sa pýtal na slovný dodatočný popis problému preto, aby sme vedeli, čo konkrétne chcete urobiť a čo konkrétne chcete vidieť na obrazovke, či si potrebujete odkontrolovávať mená tých súborov očami a napr. nespúšťať premiestňovanie súborov ak sa Vám niečo nezdá a pod. Alebo sa môže vykonať všetko v jednom kroku, skryto, iba s prípadným upozornením, že tento a tento súbor premiestniť nejde a pod. To je potom rozdielne makro, inak koncipované, inak fungujúce a inak rýchle. Teraz večer keď bude čas, skúsim použiť namiesto kontroly duplicity EVALUATE s COUNTIF, alebo Collection, aby sa aspoň z časti odbúrala zložitosť úpravy poľa a pod.
Ďalej nerozumiem čo presne má zobrazovať ten ListBox, preto som žiadal o vzorový CSV.
V SelectionChange chcete pri kliknutí na meno súboru, zobraziť jeho (iba vybraný) obsah v listboxe? To platí aj na staré aj na nové súbory ?
...

Nemyslím, že to funguje. Na mojom novom, aktualizovanom Office 2016 Pro SK x64, Win10 x64 SK, sa OnTime spúšťa absolútne divoko a netypicky. Excel si akoby prestal pamätať, kedy načasoval akciu. Vyvolá ju, aj keď ju zruším (presne daný uchovaný čas a Schedule:=False), aj keď zavriem súbor, otvorí ho. Děs-běs... Skúsil som dokonca nie nadeklarovať Dim alebo Public globálnu premennú, ale keďže sa mi zdalo, že zabúda pri BeforeClose danú premennú, tak som vytvoril aj Triedu, kde to bolo uchované. Aj tak ale keď nechám zošit dlhšie otvorený, tak spustí OnTime 2x. Akoby makro po nejakej dobre pokračovalo za MsgBox-om, bez potvrdenia MsgBoxu. ako vravím - Děs-běs...

Aby to išlo rýchlo, s tou funkcionalitou čo tam máte načrtnutú, tak to treba celé prekopať. Tie makrá nie sú vhodné. Nemám viac času, ale nezmenené Vaše makrá sú pod hrubou čiarou. Ostatné som prerobil, zmenil, pridal, ubral.
Dalo by sa to urobiť ešte v menej krokoch, ak by sme mali popis. A čas samozrejme.
Pridajte sem aj jeden vzorový súbor CSV.

No a ešte nejaký slovný popis, toho čo chcete dosiahnuť ?
Nechce sa mi príliš skúmať celý kvázi-kód a hľadať logiku. Možno totiž urobiť nové riešenie bude kratšie ako preskúmať a zmeniť kód (ktorý z toho čo vravíte, nemusí byť 100%-ný). Ale len možno...

Iný príklad. Dynamický počet rokov, údajov pre každý rok, a kontrola pomocou PF.

...LookAt:=xlPart...
zmente na
...LookAt:=xlWhole...

+- autobus ...

EDIT 2 (19:41): Opäť vymenená príloha. To snáď nieje možné :)

Skúsim to vysvetliť:
-Skopírujte si zlúčenú bunku z F8 dočasne do AP8 (Ctrl+C, Ctrl+V)
-Označte všetky bunky F8:G39, a dajte zrušiť zlúčenie.
-Onačte dočasnú zlúčenú bunku AP8, dajte Ctrl+C
-Označte všetky bunky F8:G39, a dajte pravý klik a Možnosti prilepenie - Formátovanie
-Dočasnú AP8 zrušte tak, že ju označíte a Domov - Úpravy - Vymazať - Vymazať všetko.

Teraz Vám pôjde zoraďovanie. Filter ale nie, lebo máte zase časť hlavičiek zlúčené riadky, to si ale môžete urobiť inak.

EDIT: Toto funguje len ak chcete zoraďovať podľa Štátu.

EDIT2 :
Urobil som pokus a všetky bunky som zduplikoval a zlúčil (spôsobom vyššie), aby nebola jediná, ktorá by mala inú veľkosť. Takže ste tam mal 2 zlúčené stĺpce, a teraz sú všetky. Pridal som aj filter s malou zmenou hlavičiek. Filtrovanie ide asi normálne. Zoraďovanie ale nefunguje cez filter, ale musí sa označiť oblasť A8:Z39, Údaje - Zoradiť, vybrať polia, ich poradie a smer. Potom to ide.

Za mňa osobne, ak tam to zlúčenie je len kvôli estetike, tak sa na to vykašlite, bunky urobte normálne (ak sú štáty široké, skúste skratky), a nebudú takéto nevyspytateľné problémy. Veď spodná tabuľka ZÁLOHY bude vpravo vytŕčať len o 2 bunky (o jednu ak nebude medzi nimi pauza).

A keby boli zlúčené iba naoko ?
Zarovnanie na stred výberu
Funguje to dobre.

Tak áno, ale vymeniť si vo vzorci prvý a tretí výskyt [@Dátum] za napr. "SERVIS" alebo čokoľvek iné, už Jano z Blavy zvládne. Druhý výskyt [@Dátum] vo vzorci nemeniť, ten je potrebný.

Tak ešte príklad

No a čo určuje kedy bol servis vykonaný ??? Veď predsa môže byť vykonaný pri 2098 hodinách, a potom treba hľadať položku s min 3098 hod. Nie 3000.

A test chyby musí byť na <>0, nie na =0.

Sub RunEveryTwoMinutes()
ActiveWorkbook.Save
Application.Ontime Now + TimeValue("00:02:00"), "RunEveryTwoMinutes"

On Error Resume Next
Application.Windows("Test2.xlsm").Activate

If Err <> 0 Then Call aha
end sub


Ak chcete iba otestovať či je súbor s daným názvom otvorený, a nie ho pritom aktivovať, tak napr.
Sub RunEveryTwoMinutes()
Dim Test As Boolean

ActiveWorkbook.Save
Application.Ontime Now + TimeValue("00:02:00"), "RunEveryTwoMinutes"

On Error Resume Next
Test = Application.Windows("Test2.xlsm").Visible

If Err <> 0 Then Call aha
end sub


alebo použite Workbooks:
Sub RunEveryTwoMinutes()
ActiveWorkbook.Save
Application.Ontime Now + TimeValue("00:02:00"), "RunEveryTwoMinutes"

On Error Resume Next
If Len(Workbooks("Test2.xlsm").Name) = 0 Then Call aha
end sub


Strana:  1 ... « předchozí  157 158 159 160 161 162 163 164 165   další » ... 286

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse

Vynásobit hodnoty kurzem - Power Query

Alfan • 26.4. 7:56

Relativní cesta - zdroje Power Query

Alfan • 26.4. 7:54

Vynásobit hodnoty kurzem - Power Query

elninoslov • 26.4. 7:54

Vynásobit hodnoty kurzem - Power Query

lubo • 25.4. 19:18

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 15:12

Relativní cesta - zdroje Power Query

Alfan • 25.4. 15:08

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 14:21