Příklad řazení podle uživatelského seznamu: Dim trideni As Sort Set trideni = ActiveSheet.Sort trideni.SortFields.Add Range("B2:B6"), , , _ ("pondělí,úterý,středa,čtvrtek,pátek,sobota,neděle")
V parametru CustomOrder můžete zapsat libovolný textový řetězec. Je proto možné vytvořit řazení i podle textů, které nejsou zařazeny mezi vlastní seznamy.
Seřazení tabulky Vlastní výkonný příkaz pro seřazení je metoda Apply objektu Sort. Před spuštěním této metody je zapotřebí nastavit některé vlastnosti, které určují způsob řazení: ❚ SetRange – oblast tabulky, která se má seřadit. Použijete odkaz Range, do kterého zahrnete i řádek s hlavičkami sloupců. ❚ Header – tabulka se záhlavím nebo bez záhlaví. Hodnotami jsou konstanty VBA xlNo (výchozí) – bez záhlaví, xlYes – se záhlavím, xlGuess – typ tabulky se určí automaticky. ❚ Orientation – směr řazení. Hodnotami jsou konstanty VBA xlSortColumns – ve sloupci (shora dolů), xlSortRows – v řádku. ❚ MatchCase – hodnota True znamená, že se při řazení rozlišují malá a velká písmena, hodnota False (výchozí) je nerozlišuje. Příklad: Dim trideni As Sort trideni.SetRange Range("B2:E60") trideni.Header = xlYes trideni.Orientation = xlSortColumns trideni.Apply
Protože je výchozí hodnotou parametru Orientation konstanta xlNo, tabulka se automaticky předpokládá bez hlavičky (což je přesně opačně, než při uživatelské práci). U parametru Orientation se v nápovědě jako výchozí hodnota uvádí xlSortRows, tedy třídění v řádcích. Nicméně pokud nastavení této vlastnosti vynecháte, tabulka se setřídí ve sloupcích shora dolů. Z toho plyne jediné doporučení: používejte tyto vlastnosti vždy a vyhnete se nepříjemným překvapením. V sešitu Pokrocile_techniky.xlsm vytvořte makro, které tabulku na listu Řazení seřadí takto: v prvé úrovni podle barvy pozadí ve sloupci B (žlutá nahoře), ve druhé úrovni podle barvy písma ve sloupci C (červená nahoře), ve třetí úrovni vzestupně podle hodnot ve sloupci D. V sešitu Pokrocile_techniky.xlsm je toto makro vytvořeno pod názvem Razeni.
98 Programování v Excelu 2010 a 2013
Ukázka elektronické knihy, UID: KOS196056