Nejste přihlášen/a.
Dobrý den,
mám takovýto dotaz: V excelu existuje filtr, který umožňuje uspořádání buněk od A do Z. Chtěl bych se však zeptat, zda je nějaká funkce, která by toto udělala automaticky, tj. abych např. v buňkách A1:A10 měl: Novák, Jará, Adamíra, Bárta... a do buněk D1:D10 by to už automaticky přepsalo seřazené podle abecedy, tj. Adamíra, Bárta, Jará, Novák... Jde mi vlastně o automatické tvoření prezenčních listin, kde by se do jedné tabulky dopisovali účastníci postupně tak, jak by přicházeli a na jiném listu by se už dopisovali do formuláře prezenční listiny podle abecedy. Prostě něco jako funkce SMALL, která umožňuje vybrat x-tou nejmenší hodnutu z pole. Ale ta funguje jen pro čísla. Dost se obávám, že to nejde. Řešení za použití filtru pro mne z důvodu jeho omezení (jen jeden filtr na list), není vhodné.
Předem velmi děkuji za každou radu.
Martin H.
1. Filtr neřadí - filtr podle zadané podmínky vybírá...
2. Můžete mít filtr na více, než jednom sloupci v listu...
3. Váš problém řeší např. přenos sloupce z lestu ´příhozích´ na další list (´zúčastněných´), kde přenosový sloupec podle abecedy setřídíte (nikoli tedy filtrujete)...
Díky, vím, že můžu mít filtr i na více než jednom sloupci v listu, ale problém je v tom, že nemůžu mít více samostatných, na sobě nezávislých, filtrů v jednom listu. Excel samozřejmě považuje data v jednom řádku za data spolu související, což v mém případě však neplatí. A nejde ani tak o mne, já bych si s tím poradil, ale tvořím něco pro kolegyně pro které je excel naprosto cizí a přesto s ním musí pracovat. Pokud po nich budu chtít více, než "tady klikni a o víc se nestarej", tak to skončí problémem.
Tak řešení není na první pohled patrné, ale samozřejmě existuje a je celkem "chytré":
Uděláte tabulku se čtyřmi sloupci, dejme tomu deset řádků, takže A1-D10. Do A pouze napíšete pod sebe čísla od 1 do 10, ta tam jsou jen pro další řazení, jinak se s nima nic dělat nebude. B zatím přeskočíte, do C pod sebe zapíšete slova a výrazy, které chcete řadit.
Do B1 teď umístíte vzorec
=COUNTIF($C$1:$C$10;"<="&C1)
a nakopírujete ho dolů, už by vám to mělo vypsat čísla správného pořadí. Poslední krok, do D1 dáte
=SVYHLEDAT(SMALL($B$1:$B$10;A1);$B$1:$C$10;2;NEPRAVDA)
takže se tam překopírují jména a je hotovo Má to jedinou vadu, prázdné buňky to řadí nahoru.. ale to už si můžete nějak poladit.
Jestli víte něco o makrech, pak to základní a nejjednodušší třídící makro by mohlo vypadat například tady takto :
*
sub Trideni()
Range("A1:A10").Sort key1:=Range("A1"), order1:=xlAscending
end sub
*
Setřídí vám oblast buněk A1 až A10 a začne od buňky A1. Makro třídí vzestupně a prázdné buňky budou na dolním konci.
Neneseme odpovědnost za správnost informací a za škodu vzniklou jejich využitím. Jednotlivé odpovědi vyjadřují názory jejich autorů a nemusí se shodovat s názorem provozovatele poradny Poradte.cz.
Používáním poradny vyjadřujete souhlas s personifikovanou reklamou, která pomáhá financovat tento server, děkujeme.