Hnitval

Þú ert með stóran skjá en borðin sem þú vinnur með eru enn stærri. Og þegar þú horfir yfir skjáinn í leit að nauðsynlegum upplýsingum er alltaf möguleiki á að „renna“ augunum í næstu línu og horfa í ranga átt. Ég þekki meira að segja fólk sem við slík tækifæri heldur alltaf tréreglustiku nálægt sér til að festa hana við línuna á skjánum. Tækni framtíðarinnar! 

Og ef núverandi röð og dálkur eru auðkenndir þegar virka reitinn færist yfir blaðið? Eins konar hnitval eins og þetta:

Betra en reglustikur, ekki satt?

Það eru nokkrar leiðir til að framkvæma þetta með mismunandi flóknum hætti. Hver aðferð hefur sína kosti og galla. Við skulum skoða þau í smáatriðum.

Aðferð 1. Augljóst. Fjölvi sem undirstrikar núverandi línu og dálk

Augljósasta leiðin til að leysa vandamál okkar "á enni" - við þurfum fjölvi sem mun fylgjast með breytingunni á vali á blaðinu og velja alla röðina og dálkinn fyrir núverandi reit. Einnig er æskilegt að geta kveikt og slökkt á þessari aðgerð ef nauðsyn krefur, þannig að slíkt krosslagað val komi ekki í veg fyrir að við setjum inn til dæmis formúlur heldur virki aðeins þegar við fletjum listann í leit að nauðsynlegum upplýsingar. Þetta færir okkur að þremur fjölvi (velja, virkja og slökkva) sem þarf að bæta við blaðeininguna.

Opnaðu blað með töflu sem þú vilt fá svona hnitval í. Hægrismelltu á blaðflipann og veldu skipunina í samhengisvalmyndinni Upprunatexti (Frumkóði).Visual Basic Editor glugginn ætti að opnast. Afritaðu þennan texta af þessum þremur fjölvi inn í hann:

Dim Coord_Selection As Boolean 'Global variable for choice on/off Sub Selection_On() 'Macro on selection Coord_Selection = True End Sub Selection_Off() 'Macro off selection Coord_Selection = False End Sub 'Aðalferli sem framkvæmir val Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim WorkRange As Range If Target.Cells.Count > 1 Then Exit Sub 'ef fleiri en 1 reit er valið, hætta Ef Coord_Selection = False Þá Hætta Sub 'ef val er slökkt, hætta Application.ScreenUpdating = False Set WorkRange = Range (" A6:N300") 'heimilisfang vinnusviðsins þar sem valið er sýnilegt  

Breyttu heimilisfangi vinnusviðsins í þitt eigið - það er innan þess bils sem val okkar mun virka. Lokaðu síðan Visual Basic Editor og farðu aftur í Excel.

Ýttu á flýtilykla ALT + F8til að opna glugga með lista yfir tiltæk fjölva. Fjölvi Selection_On, eins og þú gætir giska á, felur í sér hnitval á núverandi blaði og fjölvi Val_Slökkt - slekkur á því. Í sama glugga, með því að smella á hnappinn breytur (Valkostir) Þú getur úthlutað flýtilykla fyrir þessar fjölvi til að auðvelda ræsingu.

Kostir þessarar aðferðar:

  • tiltölulega auðveld í framkvæmd
  • val – aðgerðin er skaðlaus og breytir ekki innihaldi eða sniði blaðaflana á nokkurn hátt, allt helst eins og það er

Gallar við þessa aðferð:

  • slíkt val virkar ekki rétt ef sameinuð hólf eru á blaðinu - allar línur og dálkar sem eru í sambandinu eru valdar í einu
  • ef þú ýtir óvart á Delete takkann, þá verður ekki aðeins virka reiturinn hreinsaður, heldur allt valið svæði, þ.e. eyða gögnum úr allri röðinni og dálknum

Aðferð 2. Upprunaleg. CELL + Skilyrt formatting virka

Þessi aðferð, þótt hún hafi nokkra galla, finnst mér mjög glæsileg. Til að útfæra eitthvað með því að nota aðeins innbyggðu Excel verkfærin, þá er að komast í forritun í VBA að minnsta kosti listflug 😉

Aðferðin byggist á því að nota CELL fallið, sem getur gefið mikið af mismunandi upplýsingum um tiltekna reit – hæð, breidd, röð-dálkanúmer, talnasnið o.s.frv. Þessi aðgerð hefur tvö rök:

  • kóðaorð fyrir færibreytuna, eins og „dálkur“ eða „röð“
  • heimilisfang reitsins sem við viljum ákvarða gildi þessarar færibreytu fyrir

Galdurinn er sá að önnur rökin eru valkvæð. Ef það er ekki tilgreint, þá er núverandi virka reitinn tekinn.

Annar hluti þessarar aðferðar er skilyrt snið. Þessi afar gagnlegi Excel eiginleiki gerir þér kleift að forsníða frumur sjálfkrafa ef þær uppfylla tilgreind skilyrði. Ef við sameinum þessar tvær hugmyndir í eina, fáum við eftirfarandi reiknirit til að útfæra hnitval okkar með skilyrtu sniði:

  1. Við veljum töfluna okkar, þ.e. þá reiti þar sem hnitavalið á að birtast í framtíðinni.
  2. Opnaðu valmyndina í Excel 2003 og eldri Snið – Skilyrt snið – Formúla (Format — Skilyrt snið — Formúla). Í Excel 2007 og nýrri - smelltu á flipann Heim (Heim)hnappinn Skilyrt snið – Búðu til reglu (Skilyrt snið - Búa til reglu) og veldu reglugerðina Notaðu formúlu til að ákvarða hvaða frumur á að forsníða (Notaðu formúlu)
  3. Sláðu inn formúluna fyrir hnitvalið okkar:

    =EÐA(CELL(„röð“)=ROW(A2),CELL(„dálkur“)=DÚLUR(A2))

    =EÐA(CELL(«röð»)=RÖÐ(A1), HAFI(«dálkur»)=DÁLI(A1))

    Þessi formúla athugar hvort dálknúmer hvers hólfs í töflunni sé það sama og dálknúmer núverandi reits. Sömuleiðis með dálka. Þannig verða aðeins þær reiti sem hafa annað hvort dálknúmer eða línunúmer sem passa við núverandi reit fyllt út. Og þetta er krosslaga hnitavalið sem við viljum ná.

  4. Smelltu á hnappinn Framework (snið) og stilltu fyllingarlitinn.

Allt er næstum tilbúið, en það er einn blæbrigði. Staðreyndin er sú að Excel lítur ekki á breytingu á vali sem breytingu á gögnum á blaðinu. Og þar af leiðandi kallar það ekki endurútreikning formúla og endurlitun á skilyrtu sniði aðeins þegar staðsetning virka frumunnar breytist. Þess vegna skulum við bæta einföldum fjölvi við blaðeininguna sem mun gera þetta. Hægrismelltu á blaðflipann og veldu skipunina í samhengisvalmyndinni Upprunatexti (Frumkóði).Visual Basic Editor glugginn ætti að opnast. Afritaðu þennan texta af þessum einfalda fjölvi inn í hann:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveCell.Calculate End Sub  

Nú, þegar valið breytist, fer ferlið við að endurreikna formúluna með aðgerðinni af stað SELJA í skilyrtu sniði og flæða núverandi röð og dálk.

Kostir þessarar aðferðar:

  • Skilyrt snið brýtur ekki sérsniðna töflusnið
  • Þessi valkostur virkar rétt með sameinuðum frumum.
  • Engin hætta á að eyða heilri röð og dálki af gögnum við smelli fyrir slysni eyða.
  • Fjölvi eru lítið notuð

Gallar við þessa aðferð:

  • Formúluna fyrir skilyrt snið verður að slá inn handvirkt.
  • Það er engin fljótleg leið til að virkja/slökkva á slíku sniði - það er alltaf virkt þar til reglunni er eytt.

Aðferð 3. Ákjósanleg. Skilyrt snið + fjölvi

Gullni meðalvegurinn. Við notum aðferðina til að rekja valið á blaðinu með fjölvi frá aðferð-1 og bætum öruggri auðkenningu við það með því að nota skilyrt snið frá aðferð-2.

Opnaðu blað með töflu sem þú vilt fá svona hnitval í. Hægrismelltu á blaðflipann og veldu skipunina í samhengisvalmyndinni Upprunatexti (Frumkóði).Visual Basic Editor glugginn ætti að opnast. Afritaðu þennan texta af þessum þremur fjölvi inn í hann:

Dim Coord_Selection As Boolean Sub Selection_On() Coord_Selection = True End Sub Sub Selection_Off() Coord_Selection = False End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim WorkRange As Range, CrossRange As Range Set WorkRange = Range("A7"):N300") 'адрес рабочего диапазона с таблицей If Target.Count > 1 Then Exit Sub If Coord_Selection = False Then WorkRange.FormatConditions.Delete Exit Sub End If Application.ScreenUpdating = False If Not Is Not Intersect(TargetR) WorkRange, Union(Target.EntireRow, Target.EntireColumn)) WorkRange.FormatConditions.Delete CrossRange.FormatConditions.Add Type:=xlExpression, Formula1:="=1" CrossRange.FormatConditions(1).Interior.ColorIndex.FormatConditions.FormatConditions .Eyða End If End Sub  

Ekki gleyma að breyta vinnusviðsfanginu í töfluvistfangið þitt. Lokaðu Visual Basic Editor og farðu aftur í Excel. Ýttu á flýtilykla til að nota fjölva sem bætt var við ALT + F8  og haltu áfram á sama hátt og aðferð 1. 

Aðferð 4. Fallegt. FollowCellPointer viðbót

MVP Excel Jan Karel Pieterse frá Hollandi gefur ókeypis viðbót á vefsíðu sinni FollowCellPointer(36Kb), sem leysir sama vandamál með því að teikna grafískar örvalínur með fjölvi til að auðkenna núverandi röð og dálk:

 

Fín lausn. Ekki gallalaust á stöðum, en sannarlega þess virði að prófa. Sæktu skjalasafnið, pakkaðu því upp á diskinn og settu upp viðbótina:

  • í Excel 2003 og eldri – í gegnum valmyndina Þjónusta – Viðbætur – Yfirlit (Verkfæri - Viðbætur - Vafra)
  • í Excel 2007 og síðar, í gegnum Skrá – Valkostir – Viðbætur – Fara – Vafra (Skrá - Excel Valkostir - Viðbætur - Fara í - Vafra)

  • Hvað eru fjölvi, hvar á að setja inn fjölvakóða í Visual Basic

 

Skildu eftir skilaboð