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

#1 10. 10. 2015 22:09:19

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

vyfiltrovat a vytvořit CSV - vyřešeno

Dobrý den. Mám tabulku o mnoha sloupcích a cca 1000 řádků. Potřebuji vyhodit řádky které nesplňují určitá kriteria a takto vzniklou tabulku exportovat do csv. Zkoušel jsem různé filtry ale nějak se mi to nedaří. Rozlišovací sloupce jsou dva:
Celkem    Zálohy
8023,6    2455,2
1842,2    0
0    2881
24423,6    7313,5
0    0

4697,4    32346,52
6009,2    1502
0    0
4320,1    817,5

Je potřeba vyhodit všechny řádky které jsou v obou slupcích současně nulové a nebo prázdné. Daří se mi pouze ty nuly (Celkem <> 0 OR Zálohy <> 0) ale když přidám AND Celkem = neprázdné tak se nic nestane, prázdné řádky zůstávají. Pracuji v LO. Máte někdo nějakou radu?

Editoval ludviktrnka (13. 10. 2015 19:40:43)


LibreOffice 5.2.2.2

Offline

#2 11. 10. 2015 00:31:02

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 790

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Pokročilý filtr

Podmínka "and" na jeden sloupec se dělá vícenásobným opakováním sloupce.

Tj. Podmínkou je : Ve sloupci Celkem není ani nula ani prázdná buňka NEBO (druhý řádek) ve sloupci Zálohy není ani nula ani prázdná buňka 

Celkem	Celkem	Zálohy	Zálohy
<>0	<>		
		<>0	<>

Offline

#3 11. 10. 2015 10:23:55

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Aha rozumím. Zkouším to ovšem aplikovat na "standardní filtr" takto: C<>0 AND C=neprázdné OR Z<>0 AND Z=neprázdné a funguje to. Můžu tomu rozumět tak, že operátor AND je nadřazen operátoru OR - něco jako ozávorkování? A zkusil jsem tedy poprvé v životě dle vaší rady pokročilý filtr a funguje také. Supr toto určitě využiji i jinde. Děkuji.


LibreOffice 5.2.2.2

Offline

#4 11. 10. 2015 10:42:34

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

A ještě jedna věc - nyní potřebuji vytvořit CSV. Pokud dám uložit kopii, uloží se CSV bez aplikace filtru (fitr se zanedbává). Samozřejmě nejjednoduší řešení je ctrlC/V do nové listu s vložením jinak (ne vzorce) a od tam exportovat. Zajímalo by mne zda existuje způsob (ne makrem, to bych asi nějak sesmolil sám) jak uložit vyfiltrovaná data do CSV přímo z daného listu bez potřeby kopírování. (Jestli to vůbec lze)


LibreOffice 5.2.2.2

Offline

#5 11. 10. 2015 13:00:33

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 790

Re: vyfiltrovat a vytvořit CSV - vyřešeno

V nastavení filtru se dá nastavit oblast pro výsledek. Zkuste nastavit zkopírování výsledku do jiného sešitu. Nezkoušel jsem, pokud to půjde, stačí uložit. V každém případě to jde do jiného listu. Pak je to o několik kláves složitější.

Pokročilý filtr jsem navrhl, protože mi to připadalo snáze popsatelné. Pro mne je jeho hlavní výhodou snadné nastavení mnoha podmínek, tj. s drobnou nadsázkou lze filtrovat pomocí ctrl-v. Současně jsou podmínky snadno čitelné.

Pokud to má být ukládáno přímo do csv, tak makro nebo něčím mimo calc (utilit jsou tuny).

Offline

#6 12. 10. 2015 12:16:20

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Bohužel tam je nějaký bug (v LO). Jakmile dám kopírovat výsledky filtru do vedlejšího listu tak tam jsou chyby - jsou vykopírované i ty řádky které by měly být pryč. Přičemž to není stprocentní, párkrát se mi stalo že to vykopírovalo správně, ale většinou jen vykopíruje od začátku bez fitru právě ten počet řádků který by vzniknul po aplikaci fitru. Tedy z řádků 1 až 1010 má vzniknout cca 250 řádků po aplikaci filtru, no a systém prostě překopíruje řádky 1 až 250 a to včetně řádků které měly být mimo kritérium a konec, další řádky byť splňující kritérium tam nejsou. Uf.


LibreOffice 5.2.2.2

Offline

#7 12. 10. 2015 12:54:02

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

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Myslím si že na tohle stačí pomocný sloupec který vyhodnotí podmínku a vrátí například 1/"", nebo row/"" a podobně. Potom v nějakém filtru - stačí automatický - vybrat neprázdné.


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

#8 12. 10. 2015 13:08:20

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

to jsem taky udělal ale i tak kopie pomocí fitru do dalšího listu není v pořádku. Resp. někdy je v pořádku ale spíše vyjímečně (asi 2x z 10ti pokusů). Navíc tedy chcete-li exportovat do csv pak jsou pomocné sloupce trochu napřekážku, ale i tak jsem to zkusil s tím že to pak z csv smažu.


LibreOffice 5.2.2.2

Offline

#9 12. 10. 2015 22:59:42

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 790

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Tak jsem zkusil kopírování výsledku v AOO. Na jiný list kopíruje bez problémů, do jiného sešitu to nepovolí.

Zkusil jsem to také v LO. Emoce už utichly. Narazil jsem na řadu chyb, včetně chybného ctrl-šipka, problémy s nastavením filtru a, potvrzuji co bylo zmíněno, chybné kopírování výsledku. Nápovědu pro LO se mi nepodařilo najít (ani anglicky).

Co tedy poradit. Upravit csv mimo calc, nebo pro tuto úlohu použít aoo.

Offline

#10 13. 10. 2015 05:28:32

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

Re: vyfiltrovat a vytvořit CSV - vyřešeno

A co když by se to jen seřadilo podle těch dvou sloupců a zbytek tvrdě smazal?
     Tedy přímo Ctrl+C (zdroj) - Ctrl+V (cíl) a hned potom dokud je vše pod kurzorem - řadit dle sloupce "X" a "Y" nebo sloučené podmínky. Následně  vybrat "X" nebo "Y" v prvním řádku - sjet na konec dat do prvního prázdného políčka ("X, Y nebo nejlépe dle sloučené podmínky), vybrat Ctrl+END a smazat řádky. Jde jen o to zda mají ty rozhodující sloupce stejnou strukturu. Tedy aby neměly například unikátně prázdná pole.
     V posledním kroku pojmenovat list a uložit jako CSV, nebo TXT.


Když by se to dělalo opakovaně tak napsat, nebo nahrát makro.


     Pravdou je, že ty chyby by se měly důsledně dohledat a oznámit.

Editoval neutr (13. 10. 2015 05:39:17)


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

#11 13. 10. 2015 08:17:18

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

k lp. - děkuji velice za potvrzení chyby v LO - aspoň vím že tudy cesta nevede.
k neutr - bohužel mám ještě problém který jsem dříve nedostatečne identifikoval. Při použití crtlC/V na této úloze mi LO vždy (100%) spadne. Jde zřejmě o to, že se snažím schránkou přenést nějaké moc velké množství dat, děje se mi to i v jiných aplikacích, takže to bude nějaký konflikt ve win7

Mám nápad překopírovat list po řádcích makrem na základě kritéria v daném řádku do vedlejšího listu (pouze jako hodnoty) to by mělo fungovat a lze tam zautomatizovat i to uložení do csv tak holt jdu vytvářet makro "bez filtru". Půjde o pravidelnou činnost - importní protokol vydaných faktur do účetního programu - každý měsíc, ale myslel jsem původně, že to bude tak jednoduché že se makru vyhnu ... :-(


Makra považuji za nástroje aplikované zejména na cyklickou činnost a ne aby nahrazovala nedostatečnou funkčnost programu.

Editoval ludviktrnka (13. 10. 2015 09:05:42)


LibreOffice 5.2.2.2

Offline

#12 13. 10. 2015 10:31:14

Ondra.kl
Člen
Registrace: 30. 9. 2008
Příspěvků: 933

Re: vyfiltrovat a vytvořit CSV - vyřešeno

kterou verzi LO používáte?

Offline

#13 13. 10. 2015 10:34:28

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Verze: 4.4.1.2 (asi to ta úplně nejnovější není že?) EDIT: stahuji 5.0.2 vyzkouším.

EDIT2: v 5.0.2.2 funguje CTRL C/V - tzn. tabuku vyfiltrovanou na místě si překopíruju jako hodnoty do vedlejšího listu. Nefunguje kopie filtrovaných dat do vedlejšího listu pomocí nastavení vlastností filtru.


EDIT3: už mi začíná svítat včem je chyba - filtr mi filtruje tabulku plnou relativních vzorců. Vzorce jsou volně nevázány na jiné listy např v buňce D3=listxy.F3 pokud filtruji na místě pak se tento řádek jakoby skryje a mám za sebou třeba D2=listxy.F2 a D4=listxy.F4 ale pokud hodnoty kopíruji do vedlejšího listu tak se přenesou vzroce se svými relativními odkazy a ty se samozřejmě změní tak jakoby vůbec filtrované nebyly tzn. v D3=listxy.F3 přestože se tam nakopíroval vzorec ze čtvtého řádku. No ale co s tím? Není to tedy bug, je to jen nesmyslné chování filtru - měl by mít funkci kopírování jen hodnot. Tvrdé odkazy není úplně snadné zkonstruovat (musel bych každý vzorec psát zvlášť což pro 1000 řádků je celkem opruz ikdyž bych si vytvořil nějaký "konstrukční mechanismus"). Setjně mi nakonec nezbyde než vytvořit to makro. (ačkoli crtlc/v už funguje tak to tak nespěchá)


- přišel jsem na to tak že jsem pomocí ctrc/v překopčil na místě vyfiltrovanou tabulku ale bez volby vložit jinak, prostě jen ctrl+V - no a výsledek se přesně shoduje s kopií vytvořenou filtrem.

Editoval ludviktrnka (13. 10. 2015 13:13:57)


LibreOffice 5.2.2.2

Offline

#14 13. 10. 2015 17:11:06

lp.
Člen
Registrace: 24. 9. 2009
Příspěvků: 790

Re: vyfiltrovat a vytvořit CSV - vyřešeno

Testoval jsem na LO 4.4.4.?

LO 5.0.2.2 - filtr funguje, nešikovný ctrl-šipka spraven není (při opakovaném kopírování bloku se nedá rozumně přejít na další pozici).

ad. převod na abs odkazy - vyberte blok, odstraňte všechy (částečně) absoulutní odkazy (ctrl-hm najít $, nahradit vše - nesmí být povoleny regulární výrazy). Vyberte znovu blok a shift-F4 převede odkazy v bloku na absolutní. (Výmaz byl nutný kvůli sjednocení, protože Shift-F4 cykluje v každé buňce samostatně.)

Offline

#15 13. 10. 2015 19:40:18

ludviktrnka
Člen
Registrace: 9. 7. 2009
Příspěvků: 520

Re: vyfiltrovat a vytvořit CSV - vyřešeno

děkuji lp. ale absolutní odkazy mi připadají nešikovné, jákoli editace je problém, zapomenuté zastringování u některého sloupce či buňky = těžko odhalitelná chyba, chápu to tedy jako jedno z použitelných řešení a děkuji za návod jak to udělat hromadně. Aktuálně se asi přikláním k ruční kopii do volného listu, nebo časem k makru. Díky, téma uzavírám.


LibreOffice 5.2.2.2

Offline

Zápatí