Fórum pro uživatele kancelářského balíku OpenOffice | LibreOffice
 

#26 29. 1. 2018 15:27:20

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Excelu nejspíš vadí tohle Option VBASupport 1 - to je zaklínadlo pro LO. Ale věřte mi, že tam musí být deklarace listu, nebo alespoň něco jako "ThisComponent".
     Ani Excel nepozná na jaký list to má vložit. Tento princip se musí projevit i v případě, že má sešit jenom jediný list a jinam to nejde. Přestalo by to fungovat když by někdo přidal list, nebo by to chodilo do aktivního listu (ale i to je chyba a určitě to nejde).


     Na přepis použijte sešit Calcu, obarvíte si konkrétní úsek a pak do potřebného prvního a posledního řádku dáte vzorec =ROW()-1, a totéž se sloupci ale =COLUMN()-1. Tím získáte čísla pro Excel (tedy v Excelu by to mělo jít také tak ale neznám zápis - notaci - nejspíš to bude česky).

Editoval neutr (29. 1. 2018 15:29:07)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#27 29. 1. 2018 16:29:03

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 107

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

na https://ulozto.cz/!19SX5QdIGhk7/spotreba-materialu-xlsm máte sešit, ve kterém je zapsané makro pro Excel (to musí být bez toho prvního řádku). Pokud soubor spustíte v LO a máte povolený převod maker z excelu, tak se ten první řádek doplní automaticky, aby bylo možné to makro spustit. Ten zápis s prvním řádkem se do LO vkládá jen v případě, že makro vytváříte přímo v LO a pouze pro LO (viz #5). Pokud není deklarovaný list, bere se "automaticky" aktuální, jinak je možno dopsat:
ActiveSheet.Range("B3:B5").clearcontents

Editoval kabi (29. 1. 2018 22:32:44)

Offline

#28 29. 1. 2018 17:34:41

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

kabi napsal(a)

nemáte tam někde zapomenutý kus kodu, příp. zkuste vymazat všechna makra v tom sešitě a vložte ho tam znovu. Když ho napíšu do toho souboru z odkazu #4 (přeuloženého do ods), tam to v LO standardně funguje.
Příp. si v tom makru zapoznámkujte ty 4 řádky s range a spusťte ho, jestli projde prázné (poznámka je buď apostrof nebo text REM , oboje na začátku řádku.
Option VBASupport 1
Sub Macro1
'range("B3:B5").clearcontents
'range("B8:B57").clearcontents
rem range("B60:D63").clearcontents
rem range("B66:B70").clearcontents
End Sub

Když tam dám Vaše macro, tak to celé zešedne (v macroeditoru) a nestane se nic. Zkusil jsme i variantu jen s apostrofy i jen s textem REM a zůstalo to šedé.

Offline

#29 29. 1. 2018 21:04:07

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

kabi tohle bude zase chyba ActiveSheet.Range("B3:B5).clearcontents Buď takhle : ActiveSheet.Range("B3:B5").clearcontents, nebo úplně bez uvozovek.


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#30 29. 1. 2018 22:36:24

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 107

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

díky, opravil jsem to i v původním příspěvku. Správně je samozřejmě zápis s uvozovkami : ActiveSheet.Range("B3:B5").clearcontents

Offline

#31 30. 1. 2018 14:17:47

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Přepsal jsem to a vypadá to takto:

Option VBASupport 1
Sub Vymazat
ActiveSheet.Range("B3:B5").clearcontents
ActiveSheet.Range("B8:B57").clearcontents
ActiveSheet.Range("B60:D63").clearcontents
ActiveSheet.Range("B66:B70").clearcontents
End Sub



háže to teď tuhle hlášku:

BASIC - chyba při běhu.
'91'
Proměnná objektu není nastavena

mad už je mě fakt blbí, že tu otravuju 2 lidi už měsíc a furt mě to nejede.

Offline

#32 30. 1. 2018 15:53:32

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 107

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

v čem a jaké verzi to zkoušíte? Na https://ulozto.cz/!NotQw5nyPz8L/spotreba-materialu-ods jsem uložil opět ten soubor, nyní ve formátu ods. Zkuste ho stáhnout a spustit makro. Měly by se smáznout buňky B60:B63 a B66 na listu A (víc jsem toho nezadával).

Offline

#33 30. 1. 2018 19:01:44

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Otestujte také toto : VBA_Mazání


     I když nerad mrzí mne že se tak trápíte. Tak jsem udělal 3 verze a přidal makro od "kabiho". Otestujte je - v LO chodí moje makra 1. a 3. + makro od "kabi". Makro číslo 2 je postavené jako číselná array - a hlásí chybu. Podobný typ musí existovat, ale deklaruje se jinak - jsou tam poznámky.

     Mimo to myslím, že v excelu by mělo být makro na prvním místě v modulu - tedy v samostatném modulu. Pokud je to tak - musíte každé makro dát do jiného modulu. Makra VBA mají mnoho listů a zde odkazují jen na jeden list kde jsou skutečně makra napsané, Něco podobného dělá také StarBasic u AOO. Když spustím test z IDE začíná na prvním makru) a když krokuji - začíná také od prvního řádku a je mu jedno kde stojí kurzor.
     Takže to by mohla být také jedna příčina. Tu zjistíte tek, že makro číslo 1 je na prvním místě a proto by mělo chodit - nezapomeňte ale smazat zaklínadlo "VBAsupport 1" - nebo vyřadit pomocí REM, nebo jednoduchou uvozovkou (').


     Sešit mimo toho ukazuje rozdíl v deklaraci sešitu. Moje makra jdou jenom do prvního listu. Kabiho chodí do toho, který je otevřený. Proto "kabiho" makro chodí i v listu2, ale moje makra jen v listu1. Mimo toho by mělo existovat deklarování listu podle čísla pořadí.
     A ještě detail - číselné zadání buněk pro Excel chodí od jedničky a nikoliv od nuly. Jak se to dělá pomocí číselně zadané array nevím. Už se k tomuto problému vracet nebudu. Doufám že do toho vnese více světla uživatel "lp.", nebo někdo jiný.

Editoval neutr (30. 1. 2018 19:12:58)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#34 31. 1. 2018 09:32:15

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Díky, chlapy, snad se k tomu odpoledne dostanu. Nebo pak až v pátek.

Offline

#35 31. 1. 2018 10:31:44

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

jo zapomněl jsem dopsat - windows 10 pravidelně aktualizovaná a LO Calc 5.4.3.2 včera ráno stahovaný a aktualizuji taky pravidelně hned, jak to na mě vyskočí, že můžu.

Offline

#36 5. 2. 2018 07:41:56

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Tak jsme se na to teď ráno podíval:
Kabi - sice se mi při otevření napíše "Pozor soubor obsahuje makra. Mohou v nich být obsaženy viry,..." I když to odsouhlasím, tak po spuštění se mi nic nezobrazuje.

Neutr - když to otevřu, tak tam vidím jen 1 list, 2 sloupce - pracovní sloupec a kopie pracovního sloupce a žlutě vyznačené buňky, které by se měli mazat, ale nikde jsem nenašel to tlačítko s makrem, nebo i to makro. Když vlezu do maker, tak tam vidím jen to co jsem tvořil předtím. Je možný, že nemám ještě něco nainstalovaného, co by způsobovalo celý tento problém? Něco co máte u sebe už jako automaticky a nepřemýšleli jste nad tím, zatím co já s "čistou" základní instalací LO, to mít nemusím? A proto to celé nefunguje?

Offline

#37 5. 2. 2018 13:23:22

kabi
Člen
Registrace: 1. 6. 2017
Příspěvků: 107

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

dopřesněte mi, co znamená 'nic se nezobrazuje' a jestli otevíráte ten ods nebo xlsx sešit (mně fungují oba). Soubor od neutr u sebe neotevřu, hlásí mi chybu, takže zatím neporadím. Jinak se standardní instalací by makra měla fungovat, jedině si zkontrolujte nastavení vba maker v Nástroje > Možnosti > Načítání/Ukládání > Vlastnosti VBA. Pro spuštění maker v tom xlsx sešitě musíte mít povoleno "Spustitelný kod" - k tomu je ideálně zabezpečit spouštění maker pouze z nějakého adresáře (nastavuje se v Zabezpečení maker), aby se příp. nespustilo něco nechtěného např. z pošty ...

Offline

#38 8. 2. 2018 11:06:52

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

tak mi to trochu trvalo se sem vrátit, ale zrovna jsem používal tady ten projekt. Práci co bych dělal tak týden jsem měl za 2 dny hotov. Takže už se mi vrátila spousta času, který jsem do toho musel dát. Jen se klepu do hlavy, že vím, že jsem v průběhu objevil nějaké chyby, ale nenapsal jsem si je a opravil jen pro ten daný soubor... 

Ale teď k vláknu:
RDxHAmk.jpg
tohle vidím a nic víc k tomu. Ve vlastnost VBA mám vše zaškrtnuté. A v Makra/Správce maker/LibreOffice Basic vidím jen to svoje původní

Offline

#39 9. 3. 2018 08:28:08

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

tady je odkaz pro poslední variantu, kde jsem upravil některé chyby, které jsem odhalil až při reálném použití, případně drobné rozšíření toho co to umí.

https://uloz.to/!pQiEWBVWSbxp/spotreba-materialu-v2-ods

Offline

#40 9. 3. 2018 12:38:28

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Nevím jestli jsem po takové době ještě v obraze, ale mohlo by to být takto? Spotřeba materiálu V2 nový


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#41 12. 3. 2018 13:16:02

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

neutr napsal(a)

Nevím jestli jsem po takové době ještě v obraze, ale mohlo by to být takto? Spotřeba materiálu V2 nový

Prvně mi to psalo něco o aktualizaci Javy, tak jsem ji provedl. Pak jsem to zkoušel a zase nic mi to nedělá. Díval jsem se na nastavení a příkaz je v nastavení tlačítka v "schválit akci" a já předtím používal "Provést akci". Dalším co tam je, tak že přístup k tomu makru je chráněn heslem.

Zatím to řešíme jednoduše - prostě máme uložený prázdný soubor a cokoliv vyplníme dáme "uložit jako" a zatím není moc třeba zpětně něco nulovat + když už jsem to potřeboval stačilo najít na záložku, která zůstala ještě prázdná a dát ctrl+A, ctrl+C a překliknout na požadovanou záložku a ctrl+V

Takže není třeba nutně to dořešit, ale opravdu děkuji za zájem. Beru to teď hlavně jako "studijní" pokrok pro mě.

Offline

#42 12. 3. 2018 14:36:04

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

To je divné. Já jsem se u Libre office ještě nesetkal s tím, že by makra chtěla Javu. Tuhle hlášku znám z Apache OpenOffice. Ale Libre mi zatím nic takového nevyhodilo. Jo hlášku Libre také vyhodí ale jen v případě že pouštíte z místa kde nejsou makra povolena - ale nic o Javě.
     Spouštění na 'schválit akci' je stejně validní jako 'provést akci'. Jde jen o to, že na stejný příkaz (událost) nelze spouštět 2 makra. Takže pomocí těchto 'událostí' může spouštět za sebou různá makra. Podobných 'událostí' je více. To by hrát úlohu nemělo.


     To první makro by mělo vynulovat a nebo smazat obsahy z druhého sloupce. A to přes to, že tam jsou roletky 'platnost dat'. Ty se nemažou, jen se nulují. Tam kde je obyčejná hodnota bez roletky se samozřejmě nuluje také. Cyklus běží přes celý sloupec jen přeskakuje název 'počet' na řádku 60.
     Nulují se tedy i prázdné řádky. je to jedno ale je to snadnější nežli definovat buňky s daty. Takže jednim vrzem se nulují buňky B3 až B75 - s vyjímkou na řádku 60.


     To s těmi novými listy bylo myslím v jiném dotazu, ale nevím jestli to byl Váš dotaz. Takže Jsem to zabudoval i sem. Je tam asi jediná nedostatečnost. Sloupce nejsou ve stejném poměru jako v originále. To se dá snadno dodělat. Jenom jsem nevěděl jestli je to správně.
     Je nepoměrně pracnější vykopírovat mnoho listů manuálně nežli stisknout tlačítko. Chápu že máte hotový sešit a chcete jen aktuální makra nahradit správnými. To není problém i když správně uvádíte, že knihovna je zamčená. Když by to bylo správně dostal byste heslo zadem přes mailera.
     Ovšem je tam ještě jeden špek. Když to spustíte jako XLS pod Libre, nebo Apache tak vyskočí hláška - ale stejně to funguje normálně po odsouhlasení. Ta se jinak neprojevuje přímým spuštěním v LO, AOO (tedy s koncovkou ODS). Makro testuje v jakém formátu je spouštěno.


     Takže nyní nevím má se něco mazat jinak? Původní zadání bylo skutečně bez dat jen na sloupec s čísly řádků. To že by se měly hodnoty pouze nulovat jsem si dovodil ze vzoru. Mohu skutečně vymazat celé obsahy - tedy také roletky 'platnost dat'.


     Takže nyní nevím. Tlačítko nový list nepotřebujete, ale tlačítko 'smazat' nefunguje?


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#43 12. 3. 2018 15:30:06

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

neutr: vše pochopeno naprosto perfektně - stačí jen vynulovat hodnoty. Rozsah platnosti atp rozhodně ponechat.

to s tou Javou mě občas vyskočilo, když jsem se vrtal v nastavení tlačítka. Bylo to něco jako "Nainstalujte běhové rozhraní JRE (Java) a restartujte Libre Office"

a bohužel furt mi to nejede. Pokud to nemá být chybějící Javou, tak nevím, kde mám problém.

Offline

#44 13. 3. 2018 13:59:04

neutr
Člen
Registrace: 8. 3. 2007
Příspěvků: 2,718

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

Posílám nové ovládání - nyní jen z hlavní nabídky pod nabídkou OVLÁDÁNÍ Spotřeba materiálu s novým ovládáním
     Poslal jsem Vám včera heslo k odblokování knihovny. Nevím jestli jste ho dostal. Šlo to přes mailera. Otestujte přepsat volání makra tlačítky pokud by Vám to takto nevyhovovalo. Já jsem to testoval v LO i AOO a chodí to. Ale myslím, že takhle je to logičtější. Není potřeba tlačítka na každém listu.


PS :
Uvědomil jsem si, že jsem měl původně problémy přepsat makro v ovládacím prvku tlačítka 'smazat'. Sice se mi to povedlo přepisem do nového sešitu, ale nějaký problém tam musel být. Možná uzamčený původní zdroj - asi Excel. Takže i tlačítka jsem nyní raději odstranil.

Editoval neutr (13. 3. 2018 14:39:00)


Pokud je Váš problém vyřešen, označte prosím svůj příspěvek za "VYŘEŠENÝ"
Zlepšíte tak orientaci na fóru při vyhledávání řešení problémů
JAK OZNAČIT TÉMA ZA VYŘEŠENÉ

Offline

#45 14. 3. 2018 13:40:30

Delph
Člen
Registrace: 14. 8. 2017
Příspěvků: 71

Re: Nulování vstupních údajů a výběr z přednastavených hodnot - VYŘEŠENO

neutr: teď mám zase docela plno, snad se k tomu do konce týdne dostanu. Heslo dorazilo, ale děkuju za upozornění. Odesílatele "mailer" bych vynechal ve zkoumání a nechal zapadnout do historie...

Offline

Zápatí