Tarpeettomien rivien ja sarakkeiden piilottaminen/näyttö

Ongelman muotoilu

Oletetaan, että meillä on tällainen pöytä, jonka kanssa meidän täytyy "tanssia" joka päivä:

 

Kenelle pöytä näyttää pieneltä – kerro se henkisesti kaksikymmentä kertaa alueella lisäämällä pari korttelia ja kaksi tusinaa suurta kaupunkia. 

Tehtävänä on väliaikaisesti poistaa näytöltä rivit ja sarakkeet, jotka ovat tällä hetkellä tarpeettomia työn kannalta, esim. 

  • piilota tiedot kuukausittain, jättäen vain neljännekset
  • piilottaa kokonaismäärät kuukausittain ja neljännesvuosittain, jolloin vain kokonaismäärä jää puoleksi vuodeksi
  • piilottaa kaupungit, jotka ovat tällä hetkellä tarpeettomia (olen töissä Moskovassa – miksi minun pitäisi nähdä Pietari?) jne.

Tosielämässä tällaisista taulukoista on meri esimerkkejä.

Tapa 1: Piilota rivit ja sarakkeet

Menetelmä on suoraan sanottuna primitiivinen eikä kovin kätevä, mutta siitä voidaan sanoa kaksi sanaa. Kaikki aiemmin valitut taulukon rivit tai sarakkeet voidaan piilottaa napsauttamalla hiiren kakkospainikkeella sarakkeen tai rivin otsikkoa ja valitsemalla komento pikavalikosta Piilottaa (Piilottaa):

 

Käänteisessä näytössä valitse vierekkäiset rivit/sarakkeet ja napsauta hiiren kakkospainikkeella valikosta vastaavasti näyttö (Näytä).

Ongelmana on, että joudut käsittelemään jokaista saraketta ja riviä erikseen, mikä on hankalaa.

Menetelmä 2. Ryhmittely

Jos valitset useita rivejä tai sarakkeita ja valitset sitten valikosta Tiedot – Ryhmä ja rakenne – Ryhmä (Data — Group ja Outline — Group), ne suljetaan hakasulkeissa (ryhmitelty). Lisäksi ryhmät voidaan upottaa toisiinsa (enintään 8 sisäkkäistasoa sallitaan):

Kätevämpi ja nopeampi tapa on käyttää pikanäppäimiä esivalittujen rivien tai sarakkeiden ryhmittelyyn. Alt + Vaihto + oikea nuoli, ja ryhmittelyä varten Alt + Vaihto + vasen nuoliVastaavasti.

Tämä tapa piilottaa tarpeettomia tietoja on paljon kätevämpi - voit joko napsauttaa painiketta "+"Tai"-“ tai taulukon vasemmassa yläkulmassa olevissa painikkeissa, joissa on numeerinen ryhmittelytaso – silloin kaikki halutun tason ryhmät tiivistetään tai laajennetaan kerralla.

Myös, jos taulukossasi on yhteenvetorivejä tai -sarakkeita, joiden tehtävänä on summata naapurisoluja, eli mahdollisuus (ei 100 % totta), että Excel hän luo kaikki tarvittavat ryhmät taulukossa yhdellä liikkeellä – valikon läpi Tiedot – Ryhmä ja rakenne – Luo rakenne (Data — Ryhmä ja ääriviiva — Luo ääriviiva). Valitettavasti tällainen toiminto toimii hyvin arvaamattomasti ja tekee joskus täyttä hölynpölyä monimutkaisissa taulukoissa. Mutta voit yrittää.

Excel 2007:ssä ja uudemmissa versioissa kaikki nämä ilot ovat välilehdellä Päiväys (Päivämäärä) ryhmässä   Tuote mallit (Outline):

Tapa 3. Merkittyjen rivien/sarakkeiden piilottaminen makrolla

Tämä menetelmä on ehkä monipuolisin. Lisätään tyhjä rivi ja tyhjä sarake taulukon alkuun ja merkitään millä tahansa kuvakkeella ne rivit ja sarakkeet, jotka haluamme piilottaa:

Avataan nyt Visual Basic Editor (ALT + F11), lisää uusi tyhjä moduuli kirjaamme (valikko Insert – moduuli) ja kopioi sinne kahden yksinkertaisen makron teksti:

Sub Piilota() Himmeä solu alueena Application.ScreenUpdating = False 'Poista näytön päivitys käytöstä nopeuttaaksesi jokaiselle ActiveSheet.UsedRange.Rows(1).Cells-solulle " Sitten solu .EntireColumn.Hidden = True 'jos solussa x - piilota sarake Next Jokaiselle solulle ActiveSheet.UsedRange.Columns(1). Solut 'käyvät läpi kaikki ensimmäisen sarakkeen solut If cell.Value = "x" Sitten cell.EntireRow.Hidden = True 'jos solussa x - piilota rivi Next Application.ScreenUpdating = True End Sub Show() Columns.Hidden = False 'peruuta kaikki piilotetut rivit ja sarakkeet Rows.Hidden = False End Sub  

Kuten arvata saattaa, makro Piilottaa piilot ja makro show – Näyttää takaisin nimetyt rivit ja sarakkeet. Haluttaessa makroille voidaan määrittää pikanäppäimet (Alt + F8 ja -painiketta parametrit), tai luo painikkeita suoraan taulukkoon käynnistääksesi ne välilehdeltä Kehittäjä – Lisää – Painike (Kehittäjä — Lisää — Painike).

Tapa 4. Piilota rivit/sarakkeet tietyllä värillä

Oletetaan, että yllä olevassa esimerkissä haluamme päinvastoin piilottaa summat eli purppurat ja mustat rivit sekä keltaiset ja vihreät sarakkeet. Sitten aikaisempaa makroamme on muokattava hieman lisäämällä sen sijaan, että "x" olisi tarkistettu, tarkistus, että täyttöväri täsmää satunnaisesti valittujen näytesolujen kanssa:

Sub HideByColor() Himmeä solu alueena Application.ScreenUpdating = False kullekin solulle ActiveSheet.UsedRange.Rows(2).Cells If cell.Interior.Color = Range("F2").Interior.Color Sitten solu.KokoColumn.Hidden = True If cell.Interior.Color = Range("K2").Interior.Color Then cell.EntireColumn.Hidden = True Next kullekin solulle ActiveSheet.UsedRange.Columns(2).Cells If cell.Interior.Color = Range ("D6").Interior.Color Sitten solu.KokoRivi.Piilotettu = True If cell.Interior.Color = Range("B11").Interior.Color Sitten cell.EntireRow.Hidden = True Next Application.ScreenUpdating = True End Sub  

Emme kuitenkaan saa unohtaa yhtä varoitusta: tämä makro toimii vain, jos lähdetaulukon solut on täytetty väreillä manuaalisesti, eikä ehdollista muotoilua käytetä (tämä on Interior.Color-ominaisuuden rajoitus). Jos esimerkiksi korostit automaattisesti kaikki tarjoukset taulukossasi, joissa luku on alle 10, käyttämällä ehdollista muotoilua:

Tarpeettomien rivien ja sarakkeiden piilottaminen/näyttö

… ja haluat piilottaa ne yhdellä liikkeellä, niin edellinen makro on "valmistettava". Jos sinulla on Excel 2010-2013, voit päästä ulos käyttämällä omaisuuden sijaan sisusta omaisuus DisplayFormat.Interior, joka tulostaa solun värin riippumatta siitä, miten se on asetettu. Sinisten viivojen piilotusmakro saattaa näyttää tältä:

Sub HideByConditionalFormattingColor() Himmeä solu alueena Application.ScreenUpdating = False kullekin solulle ActiveSheet.UsedRange.Columns(1).Cells If cell.DisplayFormat.Interior.Color = Range("G2").DisplayFormat.Interior.Color Sitten solu .EntireRow.Hidden = True Next Application.ScreenUpdating = True End Sub  

Solu G2 otetaan näytteeksi värien vertailua varten. Valitettavasti omaisuutta DisplayFormat ilmestyi Excelissä vasta 2010-versiosta alkaen, joten jos sinulla on Excel 2007 tai vanhempi, sinun on keksittävä muita tapoja.

  • Mikä on makro, mihin makrokoodi lisätään, miten niitä käytetään
  • Automaattinen ryhmittely monitasoisissa luetteloissa

 

Jätä vastaus