Keď distribuujete svoje excelové zostavy svojim zákazníkom, je často príjemné pridať niekoľko zvončekov a píšťaliek. Jedným z jednoduchšie použiteľných vylepšení je možnosť triedenia pri dvojitom kliknutí na hlavičku stĺpca. Aj keď to môže znieť komplikovane, s týmto makrom je to pomerne jednoduché.
Pracovný príklad tejto techniky dvojitého kliknutia si môžete stiahnuť v Exceli .
Ako funguje makro
V tomto makre najskôr nájdete posledný prázdny riadok. Toto číslo riadka potom použijete na definovanie cieľového rozsahu riadkov, ktoré musíte zoradiť. Pomocou metódy Sort zoradíte cieľové riadky podľa stĺpca, na ktorý ste dvakrát klikli.
Private Sub Worksheet_BeforeDoubleClick (ByVal Target As Range, Cancel As Boolean)
'Krok 1: Deklarujte svoje premenné
Dim LastRow As Long
„Krok 2: Nájdite posledný neprázdny riadok
Posledný riadok = Cells(Rows.Count, 1).End(xlUp).Row
'Krok 3: Zoraďte vzostupne v stĺpci, na ktorý ste dvakrát klikli
Rows("6:" & LastRow).Sort _
Key1:=Cells(6, ActiveCell.Column), _
Poradie1:=xlVzostupne
End Sub
V kroku 1 deklarujete premennú Long Integer s názvom LastRow, ktorá obsahuje číslo riadka posledného prázdneho riadka.
V kroku 2 zachytíte posledný prázdny riadok tak, že začnete od úplne posledného riadka v pracovnom hárku a pomocou vlastnosti End preskočíte na prvú neprázdnu bunku (ekvivalent prechodu do bunky A1048576 a stlačenia kombinácie klávesov Ctrl+Shift+šípka nahor).
Všimnite si, že musíte zmeniť číslo stĺpca v tejto bunke na číslo, ktoré je vhodné pre vašu množinu údajov. Napríklad, ak vaša tabuľka začína stĺpcom J, musíte zmeniť príkaz v kroku 2 na Cells(Rows.Count, 10).End(xlUp).Row, pretože stĺpec J je 10. stĺpec v pracovnom hárku.
V kroku 3 definujete celkový rozsah riadkov pre vaše údaje. Majte na pamäti, že rozsah riadkov musí začínať prvým riadkom údajov (okrem hlavičiek) a končí posledným neprázdnym riadkom. V tomto prípade vaša množina údajov začína na riadku 6, takže použijete metódu Sort on Rows („6:“ & LastRow).
Argument Kľúč hovorí Excelu, podľa ktorého rozsahu sa má triediť. Opäť budete chcieť zabezpečiť, aby rozsah, ktorý používate, začínal prvým riadkom údajov (okrem hlavičiek).
Ako používať makro
Ak chcete implementovať toto makro, musíte ho skopírovať a prilepiť do okna kódu udalosti Worksheet_BeforeDoubleClick. Umiestnením makra sem umožníte jeho spustenie vždy, keď dvakrát kliknete na hárok:
Aktivujte Editor jazyka Visual Basic stlačením ALT+F11.
V okne Projekt nájdite názov projektu/zošita a kliknutím na znamienko plus vedľa neho zobrazte všetky hárky.
Kliknite na hárok, z ktorého chcete spustiť kód.
V rozbaľovacom poli Udalosť vyberte udalosť BeforeDoubleClick.
Zadajte alebo prilepte kód.