Rozšíření "Remove duplicates" je zajímavé, nicméně popisovanou potřebu nevystihuje. Na vině jsem zřejmě já, protože jsem poslední větu naformuloval takto: Dostaneme původní pořadí jen bez "duplicit". Slovo duplicity jsem dal do uvozovek. Nejde o duplicity v pravém smyslu slova. Ve sloupci na list1 nemusí být 2x. Porovnávané hodnoty jsou na listu 2. Navíc paradoxně duplicity v listu 1 zůstanou, pokud se v listu 2 nevyskytují jako heslo.
Možná by šlo oba seznamy dát pod sebe na jediný list a následně použít "Remove duplicates". To ovšem musí posoudit zadavatel. Já si myslím, že by to mohla být chyba. Nevíme za jakým účelem se výběr na listu 1 dělá. Navíc na takový postup stačí "standardní filtr".
K té složitosti: Princip je velice jednoduchý. Stačilo by použít =COUNTIF(list2.$A$1:$A$500;A1). Tedy Pouze Countif. Ve výsledku by se ale ve sloupci "E" objevily jedničky a nuly. Šlo by výsledky setřídit stejně dobře, jen by se muselo najít rozhraní mezi jedničkami a nulami. Ve výše popisovaném řešení už nuly nejsou - jen jedničky. A ty se automaticky setřídí na začátku (od E1 - například k E8).
Takový postup je daný řadou zkušeností. Kdysi jsem používal podobný výběr jen s tím, že tam bylo více hodnot, nažli 2 (1,0). Postupně jsem mazal pomocí dialogu "najdi a nahraď" hledanou hodnotu. Za hledanou hodnotu jsem dosazoval "null" (tedy vůbec nic - jen jsem určenou hodnotu smazal). Po setřídění hledaná hodnota už neexistovala ve sloupci, ale příslušné položky byly na konci. Postup jsem nahrál jako makro, které automaticky hodnoty rozdělovalo do nových listů. V makru jsem použil vyhledávání a nahrazování jako "MIN, nebo MAX". Dokud proměnná COUNTA dávala hodnotu > 0, makro běželo. Ve výsledku pak byl sešit a tolika listy, kolik bylo původních vyhledávacích hodnot. Já jsem je navíc jednotlivě ukládal do csv, takže ve výsledku jsem měl v adresáři hotovou strukturu jednotlivých databází. Při nahrávání makra jsem se opíral právě o klávesové zkratky, takže bylo jedno kolik je jednotlivých vyhledávacích hodnot a kolik zástupců měla jednotlivá hodnota.
Takže většinu té složitosti tvoří "vedlejší efekty", ale při kopírování vzorce a použití návodu krok po kroku by to nemělo vadit. V budoucnu si pak již mnohem zkušenější uživatel vzpomene na řešení, které mělo vhodné vlastnosti (lepší, nežli jen například výsledek s jedničkami i nulami a podívá se jak jsem toho docílil - už bude vědět proč jsem to dělal právě takhle.
Základní řešení jsem navíc rozšířil o možnost docílit "původního uspořádání", což zadavatel vůbec asi nepředpokládal, ale zřejmě by stejně přišel na to, že potřebuje původní pořadí. Existuje i možnost smazat hledané a zachovat i původní čísla řádků, pokud je potřeba vázat na číslo řádku jako datový údaj (čísla řádků jsou shodná před i po smazání dat, po smazaných datech zbyde prázdný řádek). Tak daleko jsem ale nezašel.
Používat rozšíření podobného typu je sice dobré, ale postupně je OOo ověšena mnoha rozšířeními jako vánoční stromeček. Rozšíření jsou postavena většinou (to je i případ "Remove duplicates") na starší verze OOo a mohou způsobovat problémy. Takže pokud obsažené funkce nepotřebuji denně, rozšíření nehledám. Pokud se mi nějaké skutečně hodí, tak ho sice nainstaluji, ale běh povolím až když to potřebuji. Pak se mi ale za delší dobu stane, že si už nemůžu vzpomenout proč jsem rozšíření instaloval - pokud to přímo z názvu nevyplývá jednoznačně. Takže jsem opatrný na instalaci rozšíření.
Editoval neutr (26. 12. 2012 10:08:17)
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É