Як вылучыць актыўны радок і слупок у Excel

  • Падзяліцца Гэтым
Michael Brown

У гэтым уроку вы даведаецеся 3 розныя спосабы дынамічнага вылучэння радка і слупка выбранай ячэйкі ў Excel.

Пры працяглым праглядзе вялікага аркуша вы можа ў канчатковым выніку страціць след, дзе знаходзіцца ваш курсор і якія дадзеныя вы праглядаеце. Каб дакладна ведаць, дзе вы знаходзіцеся ў любы момант, прымусіце Excel аўтаматычна выдзяляць для вас актыўны радок і слупок! Натуральна, падсвятленне павінна быць дынамічнай і змяняцца пры кожным выбары чарговай ячэйкі. Па сутнасці, гэта тое, чаго мы імкнемся дасягнуць:

    Аўтаматычнае вылучэнне радка і слупка выбранай ячэйкі з дапамогай VBA

    Гэта Прыклад паказвае, як вы можаце праграмна вылучыць актыўны слупок і радок з дапамогай VBA. Для гэтага мы будзем выкарыстоўваць падзею SelectionChange аб'екта Worksheet .

    Спачатку вы ачысціце колер фону ўсіх вочак на аркушы, усталяваўшы <Уласцівасць 1>ColorIndex раўняецца 0. Затым вы выдзяляеце ўвесь радок і слупок актыўнай ячэйкі, усталёўваючы для іх уласцівасці ColorIndex нумар індэкса патрэбнага колеру.

    Private Sub Worksheet_SelectionChange ( ByVal Target As Range) Калі Target.Cells.Count > 1 Затым выйдзіце з Sub Application.ScreenUpdating = False 'Ачысціць колер усіх ячэек Cells.Interior.ColorIndex = 0 З Target 'Вылучыць радок і слупок выбранай ячэйкі .EntireRow.Interior.ColorIndex = 38.EntireColumn.Interior.ColorIndex = 24 End With Application.ScreenUpdating = True End Sub

    Наладжванне кода

    Калі вы жадаеце наладзіць код пад свае патрэбы, гэтыя невялікія парады могуць спатрэбіцца:

    • У нашым прыкладзе кода выкарыстоўваюцца два розныя колеры, прадэманстраваныя ў gif-файле вышэй - індэкс колеру 38 для радка і 24 для слупка. Каб змяніць колер вылучэння , проста заменіце іх на любыя коды ColorIndex па вашаму выбару.
    • Каб атрымаць колер радка і слупка аднолькава , выкарыстоўвайце аднолькавы нумар каляровага індэкса для абодвух.
    • Каб вылучыць толькі актыўны радок , выдаліце ​​або закаментуйце гэты радок: .EntireColumn.Interior.ColorIndex = 24
    • Каб вылучыць толькі актыўны слупок , выдаліце ​​або закаментуйце гэты радок: .EntireRow.Interior.ColorIndex = 38

    Як дадаць код на ваш аркуш

    Каб код бясшумна выконваўся ў фонавым рэжыме пэўнага аркуша, вам трэба ўставіць яго ў акно кода, якое належыць гэтаму аркушу, а не ў звычайны модуль. Каб зрабіць гэта, выканайце наступныя крокі:

    1. У сваёй працоўнай кнізе націсніце Alt + F11, каб перайсці ў рэдактар ​​VBA.
    2. У аглядальніку праектаў злева вы Вы ўбачыце спіс усіх адкрытых працоўных кніг і іх працоўных лістоў. Калі вы яго не бачыце, выкарыстоўвайце спалучэнне клавіш Ctrl + R, каб адкрыць акно Правадыра праекта.
    3. Знайдзіце мэтавую кнігу. У сваім Microsoft ExcelУ тэчцы Objects двойчы пстрыкніце аркуш, да якога вы хочаце прымяніць вылучэнне. У гэтым прыкладзе гэта Аркуш 1 .
    4. У акне кода справа ўстаўце прыведзены вышэй код.
    5. Захавайце файл як Рабочая кніга з падтрымкай макрасаў (.xlsm).

    Перавагі : усё робіцца ў бэкендзе; не патрэбныя карэкціроўкі/налады з боку карыстальніка; працуе ва ўсіх версіях Excel.

    Недахопы : ёсць два істотныя недахопы, якія робяць гэты метад непрыдатным пры пэўных абставінах:

    • Код ачышчае фон колеры ўсіх вочак на аркушы. Калі ў вас ёсць якія-небудзь каляровыя ячэйкі, не выкарыстоўвайце гэта рашэнне, таму што ваша індывідуальнае фарматаванне будзе страчана.
    • Выкананне гэтага кода блакуе функцыю адмены на аркушы, і вы не зможаце адмяніць памылковае дзеянне, націснуўшы Ctrl + Z.

    Вылучыць актыўны радок і слупок без VBA

    Найлепшае, што вы можаце атрымаць, каб вылучыць выбраны радок і /або слупок без VBA - гэта ўмоўнае фарматаванне Excel. Каб наладзіць яго, выканайце наступныя крокі:

    1. Выберыце свой набор даных, у якім трэба зрабіць вылучэнне.
    2. На ўкладцы Галоўная ў Група "Стылі" , націсніце Новае правіла .
    3. У дыялогавым акне Новае правіла фарматавання выберыце Выкарыстоўваць формулу для вызначэння вочак фармат .
    4. У значэннях Фармат, дзе гэтая формулапраўда , увядзіце адну з наступных формул:

      Каб вылучыць актыўны радок :

      =CELL("row")=ROW()

      Каб вылучыць актыўны слупок :

      =CELL("col")=COLUMN()

      Каб вылучыць актыўны радок і слупок :

      =OR(CELL("row")=ROW(), CELL("col")= COLUMN())

      Усе формулы выкарыстоўваюць функцыю CELL для вярнуць нумар радка/слупка абранай ячэйкі.

    5. Націсніце кнопку Фарматаваць , пераключыцеся на ўкладку Заліўка і абярыце колер, які вам падабаецца.
    6. Націсніце двойчы ОК, каб закрыць абодва дыялогавыя вокны.

    Калі вы адчуваеце, што вам патрэбныя больш падрабязныя інструкцыі, глядзіце, як стварыць правіла ўмоўнага фарматавання на аснове формулы.

    У гэтым прыкладзе мы выбралі АБО формула, каб зацяніць слупок і радок адным колерам. Гэта займае менш працы і падыходзіць для большасці выпадкаў.

    На жаль, гэтае рашэнне не такое добрае, як VBA, таму што патрабуе пераразліку аркуша ўручную (націснуўшы клавішу F9). Па змаўчанні Excel пералічвае аркуш толькі пасля ўводу новых даных або рэдагавання існуючых, але не пры змене выбару. Такім чынам, вы выбіраеце іншую ячэйку - нічога не адбываецца. Націсніце F9 - аркуш абнаўляецца, формула пералічваецца і выдзяленне абнаўляецца.

    Каб працоўны аркуш аўтаматычна пераразлічваўся пры кожнай падзеі SelectionChange адбываецца, вы можаце размясціць гэты просты код VBA ў модулі кода вашага мэтавага аркуша, як тлумачыцца ўпапярэдні прыклад:

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

    Код прымушае выбраны дыяпазон/ячэйку пераразлічвацца, што, у сваю чаргу, прымушае абнаўляць функцыю CELL і адлюстроўваць умоўнае фарматаванне змяненне.

    Перавагі : у адрозненне ад папярэдняга метаду, гэты не ўплывае на існуючае фарматаванне, якое вы ўжылі ўручную.

    Недахопы : можа пагоршыць прадукцыйнасць Excel.

    • Каб умоўнае фарматаванне працавала, трэба прымусіць Excel пералічваць формулу пры кожнай змене выбару (альбо ўручную з дапамогай клавішы F9, альбо аўтаматычна з дапамогай VBA). Прымусовыя пераразлікі могуць запаволіць ваш Excel. Паколькі наш код пераразлічвае вылучэнне, а не ўвесь аркуш, негатыўны эфект, хутчэй за ўсё, будзе прыкметны толькі на сапраўды вялікіх і складаных кнігах.
    • Паколькі функцыя CELL даступная ў Excel 2007 і вышэй, метад не можа працаваць. t працуе ў больш ранніх версіях.

    Вылучыць выбраны радок і слупок з дапамогай умоўнага фарматавання і VBA

    Калі папярэдні спосаб значна запавольвае вашу працоўную кнігу, вы можаце падысці да задачы інакш - замест пераразліку аркуша пры кожным руху карыстальніка, атрымайце нумар актыўнага радка/слупка з дапамогай VBA, а затым падайце гэты лік у функцыі ROW() або COLUMN() з дапамогай формул умоўнага фарматавання.

    Каб дасягнуць гэтага,вось крокі, якія вам трэба выканаць:

    1. Дадайце новы чысты аркуш у вашу кнігу і назавіце яго Дапаможны аркуш . Адзіная мэта гэтага аркуша - захоўваць два лікі, якія прадстаўляюць радок і слупок, якія змяшчаюць выбраную ячэйку, каб вы маглі бяспечна схаваць аркуш пазней.
    2. Устаўце прыведзены ніжэй VBA ў акно кода працоўнага аркуша дзе вы хочаце ажыццявіць падсвятленне. Каб атрымаць падрабязныя інструкцыі, звярніцеся да нашага першага прыкладу. Private Sub Worksheet_SelectionChange( ByVal Target As Range) Application.ScreenUpdating = False Worksheets( "Дапаможны ліст" ).Cells(2, 1) = Target.Row Worksheets( "Дапаможны ліст" ).Cells(2, 2) = Target.Column Application.ScreenUpdating = True End Sub

      Прыведзены вышэй код размяшчае каардынаты актыўнага радка і слупка на аркушы з назвай «Дапаможны аркуш». Калі вы назвалі аркуш па-іншаму на этапе 1, адпаведна змяніце назву аркуша ў кодзе. Нумар радка запісваецца ў A2, а нумар слупка ў B2.

    3. На вашым мэтавым аркушы выберыце ўвесь набор даных і стварыце правіла ўмоўнага фарматавання з прыведзенымі ніжэй формуламі. Пакрокавае кіраўніцтва прадстаўлена ў прыведзеным вышэй прыкладзе.

    А цяпер давайце падрабязна разгледзім тры асноўныя выпадкі выкарыстання.

    Як вылучыць актыўны радок

    Каб вылучыць радок, дзе ў дадзены момант знаходзіцца курсор, усталюйце правіла ўмоўнага фарматавання з дапамогай гэтагаформула:

    =ROW()='Helper Sheet'!$A$2

    У выніку карыстальнік можа выразна бачыць, які радок выбраны ў дадзены момант:

    Як вылучыць актыўны слупок

    Каб вылучыць абраны слупок, перадайце нумар слупка ў функцыю COLUMN з дапамогай гэтай формулы:

    =COLUMN()='Helper Sheet'!$B$2

    Цяпер выдзелены слупок дазваляе вам зручна і без асаблівых высілкаў чытаць вертыкальныя даныя, цалкам засяроджваючыся на ім.

    Як вылучыць актыўны радок і слупок

    Каб выбраны радок і слупок былі аўтаматычна зацянены адным колерам, аб'яднайце функцыі ROW() і COLUMN() у адну формулу:

    =OR(ROW()='Helper Sheet'!$A$2, COLUMN()='Helper Sheet'!$B$2)

    Адпаведныя дадзеныя адразу трапляюць у фокус, так што вы можаце пазбегнуць іх няправільнага чытання.

    Перавагі : аптымізаваная прадукцыйнасць; працуе ва ўсіх версіях Excel

    Недахопы : самая доўгая ўстаноўка

    Вось як вылучыць слупок і радок выбранай ячэйкі ў Excel. Я дзякую вам за чытанне і з нецярпеннем чакаю сустрэчы з вамі ў нашым блогу на наступным тыдні!

    Практычны сшытак для спампоўкі

    Вылучэнне актыўных радкоў і слупкоў (файл .xlsm)

    Майкл Браўн - адданы энтузіяст тэхналогій, які любіць спрашчэнне складаных працэсаў з дапамогай праграмных інструментаў. Маючы больш чым дзесяцігадовы досвед працы ў індустрыі тэхналогій, ён удасканальваў свае навыкі ў Microsoft Excel і Outlook, а таксама ў Google Sheets і Docs. Блог Майкла прысвечаны таму, каб падзяліцца сваімі ведамі і вопытам з іншымі, даючы простыя ў выкананні парады і падручнікі для павышэння прадукцыйнасці і эфектыўнасці. Незалежна ад таго, з'яўляецеся вы дасведчаным прафесіяналам або пачаткоўцам, блог Майкла прапануе каштоўную інфармацыю і практычныя парады, каб атрымаць максімальную аддачу ад гэтых неабходных праграмных інструментаў.