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

#1 2. 10. 2013 15:07:15

jkucera70
Člen
Registrace: 31. 1. 2012
Příspěvků: 29

Duplicity ve sloupci - VYŘEŠENO

Ahoj všem, zkoušel jsem vyhledat duplici ve sloupci, ale žádná rada mi nepomohla. Shlédl jsem i toto video http://www.openoffice.cz/videa/calc-fil … i-duplicit ale ani po zadání dle tohoto videa žádné duplicity vyhledány nebyly a to přestože ve testovaném sloupci jsou.
Pomůžete mi někdo?

Editoval jkucera70 (4. 10. 2013 10:17:40)

Offline

#2 2. 10. 2013 17:16:09

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

Re: Duplicity ve sloupci - VYŘEŠENO

Tohle se tady řešilo už několikrát. Uvádíte sice video, ale není vidět, že by jste prohledal diskusi a články. Na této stránce zvolte záložku hledat a jistě najdete to co hledáte.
     Určitě by jste měl najít řešení pomocí maticových vzorců, tříděním a možná i makry. Pokud by jste měl případ, který má jiné potřeby, nežli ty dříve řešené, postněte příklad s dobrým popisem.


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

Offline

#3 2. 10. 2013 17:46:52

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

Re: Duplicity ve sloupci - VYŘEŠENO

Co znamená "vyhledat"? Kolik je hodnot? Bede se to opakovat?

Obecně pomůže funkce COUTIF, případně filtr nebo kontingenční tabulka.

Offline

#4 2. 10. 2013 19:41:05

jkucera70
Člen
Registrace: 31. 1. 2012
Příspěvků: 29

Re: Duplicity ve sloupci - VYŘEŠENO

Prošel jsem i fórum. Zadal jsem to podle video návodu, ale nic to nevyhledalo. Je možné, že by to bylo tím, že používám formát xls?

Offline

#5 3. 10. 2013 04:04:12

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

Re: Duplicity ve sloupci - VYŘEŠENO

Ne tím, že užíváte .xls to není. To by hrálo úlohu pokud by jste hledal v nápovědě programu. XLS je formát Excelu, ale tam by jste měl také možná najít stejně jako v AOO, nebo LO nějakou nápovědu.
1 - Na této stránce vyberte záložku hledat.
2 - Otevře se stránka a vyplníte kolonku Hledání podle klíčového slova heslem například "duplicity".
3 - Vyberete v kolonce Vyhledat v "text zprávy a předmět".
4 - Zaškrtněte kolonku Calc (zaškrtávací políčko musí mít fajfku) v rámečku nazvaném Práce s programy OpenOffice - LibreOffice
5 - V rámečku Vyberte si, jak chcete zobrazit výsledky vyhledávání zvolte Zobrazit příspěvky jako "Příspěvky".
6 - Stiskněte tlačítko ODESLAT.
7 - Zobrazí se Vám odstavečky diskuse, kde se toto slovo objevuje. Většinou musíte kliknout v pravém dolním rohu na klikací odkaz Přejít na téma Přejít na příspěvek. Před tím se ale podívejte na nadpis odstavečku (vlevo nad odstavečkem), jestli by to bylo přibližně to co hledáte.
--------------------------------------------------------------
Hledání v článcích:
V hlavním modrém pruhu nabídek na této stránce vyberete Články.
Objeví se nová stránka a podobný modrý pruh - v něm je okénko s šedým textem Vyhledat. Tam napíšete zase podobně heslo například "duplicity" a stisknete v tom okénku "lupu". Je tam asi 5 odkazů na články kde se duplicity vyskytují.

Editoval neutr (3. 10. 2013 04:18:08)


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

Offline

#6 3. 10. 2013 10:03:40

jkucera70
Člen
Registrace: 31. 1. 2012
Příspěvků: 29

Re: Duplicity ve sloupci - VYŘEŠENO

Ale já přece vím, jak se hledá. Ale nic z toho prostě nefunguje. Potřebuju v obsáhlé tabulce, asi 5000 řádků najít duplicity. Filtr dle uvedeného videa nefunguje - nevím proč. Postup zde http://forum.openoffice.cz/viewtopic.php?id=1830 je sice hezký, ale neřeší můj problém, protože vyhodnocuje první nález počtem duplicit + 1. U každé další duplicity pak uvede snížený počet, podle toho kolik je níže ještě duplicitních záznamů. Podle tady toho si můžu akorát tak najít duplicitní údaj a ručně ho vymazat.
Navíc do této databáze chci přidávat další údaje, prostě je nakopírovat pod původní databázi. Pak potřebuju celou databázi zkontrolovat, zda přidaný hledaný údaj už v databázi není, pokud ano, tak jestli jsou další údaje k hledanému záznamu v původním řádku stejné od nově přidaných a pokud ne, tak nově přidané nakopírovat do původního záznamu a nově přidávaný záznam smazat.
Tady z tohoto mého popisu to však vypadá spíše na nějaké makro. Pomůže mi s tím někdo? Děkuji

Offline

#7 3. 10. 2013 11:53:26

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

Re: Duplicity ve sloupci - VYŘEŠENO

Oprava dle zadavatele v posledním příspěvku
Dobře popíšu jak se to dělá.
1. - Vložíme sloupec tak aby byl první.
2. - Do A1 vložíme vzorec =ROW() a vykopírujeme třeba až na konec listu, ale kdykoliv to můžete upravit a předělat - 10 vteřin práce.
3. - Všechny záznamy ve sloupci A načteme do paměti a vložíme zpět jen jako čísla.
    Tohle je pomocný sloupec, podle kterého nakonec vrátíme původní pořadí bez duplicit.
4. Všechny záznamy Vybereme pomocí stisků kláves Ctrl+End. Skočíme na konec seznamu. Stiskneme Shift+Ctrl+Home a vybereme úplně vše včetně nového sloupce.
5. Přetřídíme podle potřeby - nyní už zřejmě podle sloupce "B" a možeme přidat i další - třeba "C" a "D".
6. Skočíme zase nakonec pomocí Ctrl+End, ale nyní šipklou doprava abychom stáli v prázdném sloupci. Může to být ten těsně za daty, nebo kousek dál aby to bylo přehledné.
7. do té poslední buňky v posunutém sloupci zadáme vzorec (například stojíme v buňce F5000. - Pro buňku B1 se dotazujeme na buňku B2) :
= IF(B5000 = B5001,1, "")
8. Zkopírujeme vzorec do úseku F1:F5000. Hned načteme do paměti a vložíme zase jen jako čísla.


     Tam kde budou duplicity vyskočí jednička, tam kde nebudou nebude vůbec nic.


9. Zase vybereme vše Ctrl+End následně Shift+Ctrl+Home ale nyní už seřadíme podle sloupce "F".
   Nahoře od F1 budou samé jedničky. Takže Se postavíme do F1, podržíme Shift+Ctrl+šípka dolů. - Vybereme sloupec F se záznamy jedničky. Dál podržíme Shift+Ctrl+šípka vlevo. Nyní máme vybrány všechny duplicity a můžeme:
1. smazat, nebo
2. odstranit buňky a nebo
3. odstranit řádky. Tohle můžeme udělat hned když máme vybrán sloupec "F" - není nutné vybírat celý úsek A1:Fxy. - Například když by jsme vystříhli duplicity a dávali je jinam - pak se hodí vybrat vše.


10. Opět vybereme vše stejně jako v bodu 9, ale přetřídíme podle sloupce "A"
    Následně můžeme celý sloupec A odstranit, nebo tam znovu vložit pořadí od jedné, protože tohle už má vynechaná čísla která jsme smazali.



    Když si nedříve na nečisto odzkoušíte klávesové zkratky, tak Vám práce nezabere víc jak 3 minuty a může tam být i 50.000 zápisů.
    Když by jste potřeboval opravu - protože se stala chyba, stačí dát zpět, nebo zavřít bez uložení. Následně znovu otevřít a postup zopakovat.

Editoval neutr (4. 10. 2013 10:54:05)


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

Offline

#8 3. 10. 2013 17:19:56

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

Re: Duplicity ve sloupci - VYŘEŠENO

Stále jste nenapsal co hledáte a co s tím chcete dělat. Pokud chcete pouze vybarvit (při uvedeném rozsahu asi zbytečné), použijte podmíněný formát-podmínka=hodnota sousední roletky - duplicitní hopdnoty.

Pokud potřebujete ponechat první výskyt a označit opakované hodnoty, použijte funci match (je rychlejší než obvyklá countif.

Předpokládám, že hodnoty jsou ve soupci A1:Axxx.

Do buňky sloupce (třeba B2 - v prvním řádku nemůže být opakovaný výskyt jakékoliv hodnoty) zapište vzorec:

=MATCH(A2;$A$1:A1;0)

a zkopírujete do dalších řádků. Když je výsledkem číslo, je daném řádku opakovaná hodnota. (dál filtr, ...)

Pokud chceš jen zkontrolovat, jestli jsou duplicity použij maticový vzorec

=SUM(COUNTIF(A1:A5000;A1:A5000))-COUNTA(A1:A5000)

Pokud není výsledek 0 jsou tam duplicity.

Nebo použij standardní filtr na sloupec A, vyber neprázdné buňky, klepni na "více" a zaškrtni "bez duplikátů"
vyber prázdný sloupec vedle a vyplň ho nějakou značkou. Zruš filtr a vyber neoznačené řádky.

Pokud potřebujete mazat od počátku, lze funkci match otočit a hledat od následujícího řádku do konce:

k1:

=MATCH(A1;A2:$A$5000;0)

l1:

=IF(ISNUMBER(K1);IF(AND(B1:J1=OFFSET(B1:J1;K1;0));"shoda";"nic");"nic")

V L1 je maticový vzorec, do dalších buněk se musí kopírovat tažením myší se stiknutým ctlr nebo ho vybrat do schránky (ctrl-c), pak vybrat cílovou oblast (k2:k5000) a vložit (ctrl-v)

Pokud v dalších řádcích existuje stejná hodnota ve sloupci A a shodují se i buňky ve sloupcích B:J, tak napíše "shoda"

Prostě možností je hodně. Popisovat zde možnosti, které mne napadnou není moc produktivní, pokud nedokážeš lépe popsat problém.

Editoval lp. (3. 10. 2013 18:03:03)

Offline

#9 4. 10. 2013 10:15:48

jkucera70
Člen
Registrace: 31. 1. 2012
Příspěvků: 29

Re: Duplicity ve sloupci - VYŘEŠENO

Využil jsem rady neutr, byť jsem to zkoušel metodou pokus omyl. Návod je sice správný, ale nepřesně popsaný, takže ho pochopí snad jen ten, kdo má nějaké zkušenosti se vzorci.
Bod 5. by chtělo upravit na přetřídit podle sloupce, ve kterém hledáme duplicity
Bod 7. upravit na vzorec do prázdné buňky dáme vzorec odkazující na přetříděný sloupec, kde hledáme duplicity.
Tímto jsem to tedy provedl a duplicity odstranil.
Pro mé účely to tedy postačilo. Děkuji

Offline

#10 4. 10. 2013 11:03:11

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

Re: Duplicity ve sloupci - VYŘEŠENO

Úprava podle jkucera70
1. - Vložíme sloupec tak aby byl první a prázdý.
2. - Do A1 vložíme vzorec =ROW() a vykopírujeme třeba až na konec listu, ale kdykoliv to můžete upravit a předělat - 10 vteřin práce.
3. - Všechny záznamy ve sloupci A načteme do paměti a vložíme zpět jen jako čísla.
    Tohle je pomocný sloupec, podle kterého nakonec vrátíme původní pořadí bez duplicit.
4. - Všechny záznamy Vybereme pomocí stisků kláves Ctrl+End. Skočíme na konec seznamu. Stiskneme Shift+Ctrl+Home a vybereme úplně vše včetně nového sloupce.
5. - Přetřídíme podle potřeby - nyní už zřejmě podle sloupce hledaných duplicit - tedy podle sloupce "B" a možeme přidat i další - třeba "C" a "D". To je bez vlivu na funkčnost operace - můžete vynechat.
6. - Skočíme zase nakonec pomocí Ctrl+End, ale nyní šipklou doprava abychom stáli v prázdném sloupci. Může to být ten těsně za daty, nebo kousek dál aby to bylo přehledné.
7. - do té poslední buňky v posunutém sloupci zadáme vzorec odkazující na přetříděný sloupec, kde hledáme duplicity. (Vzorce odkazují na následující buňku - Proto musí být předem přetříděn sloupec s duplicitami). - Například pro buňku B1 se dotazujeme na buňku B2) :
V buňce F1 je vzorec =IF(B1 = B2,1, "")
V buňce F5000 (poslední buňka) je vzorec =IF(B5000 = B5001,1, "")
8. - Zkopírujeme vzorec do úseku F1:F5000. Hned načteme do paměti a vložíme zase jen jako čísla.


     Tam kde budou duplicity vyskočí jednička, tam kde nebudou nebude vůbec nic.


9. - Zase vybereme vše Ctrl+End následně Shift+Ctrl+Home ale nyní už seřadíme podle sloupce "F".
   Nahoře od F1 budou samé jedničky. Takže Se postavíme do F1, podržíme Shift+Ctrl+šípka dolů. - Vybereme sloupec F se záznamy jedničky. Dál podržíme Shift+Ctrl+šípka vlevo. Nyní máme vybrány všechny duplicity a můžeme:
A. smazat, nebo
B. odstranit buňky a nebo
C. odstranit řádky. Tohle můžeme udělat hned když máme vybrán sloupec "F" - není nutné vybírat celý úsek A1:Fxy. - Například když by jsme vystříhli duplicity a dávali je jinam - pak se hodí vybrat vše.


10. - Opět vybereme vše stejně jako v bodu 9, ale přetřídíme podle sloupce "A"
    Následně můžeme celý sloupec A odstranit, nebo tam znovu vložit pořadí od jedné, protože tohle už má vynechaná čísla která jsme smazali.

Editoval neutr (4. 10. 2013 11:09:15)


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

Offline

Zápatí