Nie je žiadnym tajomstvom, že väčšina používateľov Excelu pri vytváraní tabuliek na hárkoch myslí predovšetkým na vlastný komfort a pohodlie. Takto sa rodia krásne, farebné a ťažkopádne tabuľky so zložitými „hlavičkami“, ktoré sa zároveň nedajú vôbec filtrovať ani triediť a o automatickom prehľade s kontingenčnou tabuľkou je lepšie vôbec neuvažovať.
Skôr či neskôr používateľ takéhoto stola dospeje k záveru, že „možno to nie je také krásne, ale môže to fungovať“ a začne zjednodušovať dizajn svojho stola a zosúladiť ho s klasickými odporúčaniami:
- jednoduchá jednoriadková hlavička, kde každý stĺpec bude mať svoj vlastný jedinečný názov (názov poľa)
- jeden riadok – jedna dokončená operácia (obchod, predaj, účtovanie, projekt atď.)
- žiadne zlúčené bunky
- bez prestávok vo forme prázdnych riadkov a stĺpcov
Ale ak vytvoríte jednoriadkovú hlavičku z viacúrovňovej alebo rozdelíte jeden stĺpec na niekoľko, je to celkom jednoduché, potom môže rekonštrukcia tabuľky zabrať veľa času (najmä pri veľkých veľkostiach). Znamená to nasledujúcu situáciu:
Of | do |
Z hľadiska databáz sa pravá tabuľka zvyčajne nazýva plochá (plochá) – podľa takýchto tabuliek je najlepšie zostavovať zostavy kontingenčných tabuliek (kontingenčných tabuliek) a vykonávať analýzy.
Dvojrozmernú tabuľku môžete previesť na plochú tabuľku pomocou jednoduchého makra. Otvorte editor jazyka Visual Basic cez kartu Vývojár – Visual Basic (Vývojár — Visual Basic Editor) alebo klávesová skratka ostatné+F11. Vložte nový modul (Vložiť – Modul) a skopírujte tam text tohto makra:
Sub Redesigner() Dim i As Long Dim hc As Integer, hr As Integer Dim ns As Worksheet hr = InputBox("Сколько строк с подписями сверху?") hc = InputBox("Солскольья?" False i = 1 Set inpdata = Selection Set ns = Worksheets.Add For r = (hr + 1) To inpdata.Rows.Count For c = (hc + 1) To inpdata.Columns.Count For j = 1 To hc ns. Cells(i, j) = inpdata.Cells(r, j) Next j For k = 1 To hr ns.Cells(i, j + k - 1) = inpdata.Cells(k, c) Next k ns.Cells( i, j + k - 1) = inpdata.Cells(r, c) i = i + 1 Ďalší c Ďalší r End Sub
Potom môžete zatvoriť editor VBA a vrátiť sa do Excelu. Teraz môžeme vybrať pôvodnú tabuľku (úplne, s hlavičkou a prvým stĺpcom s mesiacmi) a spustiť naše makro Vývojár – makrá (Vývojár – makrá) alebo stlačením kombinácie ostatné+F8.
Makro vloží do knihy nový list a vytvorí na ňom novú, zrekonštruovanú verziu vybranej tabuľky. S takouto tabuľkou môžete pracovať „v plnom rozsahu“ pomocou celého arzenálu nástrojov Excel na spracovanie a analýzu veľkých zoznamov.
- Čo sú makrá, kam vložiť kód makra vo VBA, ako ich používať
- Vytváranie zostáv pomocou kontingenčných tabuliek
- Nástroj na prerobenie stolov XNUMXD na ploché z doplnku PLEX