Как выделить строку в экселе

Как выделить строки в Excel по условию? Выделение строк с заданными значениями

Каждый лист рабочей книги Excel разбит на строки и столбцы, количество которых зависит от версии приложения. Строки и столбцы можно удалять, добавлять, объединять и перемещать. Ранее уже рассматривалось удаление строк по условию, удаление столбцов по условию и добавление пустых строк в рабочие книги Excel. Ниже будет рассмотрено еще одно действие, совершаемое со строками – выделение.

Как выделить одну строку?

Существует несколько способов для того чтобы выделить строку:

1. Можно в окне открытого листа кликнуть левой кнопкой мыши курсором-стрелкой один раз по номеру нужной строки ;

2. также, в окне открытого листа, можно установить маркер выделения в любую ячейку нужной строки и использовать сочетание клавиш Shift+Space (пробел);

3. и наконец, можно установить маркер выделения в первую ячейку нужной строки и использовать сочетание клавиш Ctrl+Shift+Стрелка вправо. При этом, если в строке есть данные, то первое нажатие этого сочетания клавиш выделит часть строки с даными, а второе – уже всю строку.

Как выделить несколько строк подряд?

1. Выделить первую строку нужного диапазона и не отпуская левую кнопку мыши протащить курсор-стрелку по номерам нужных строк;

2. выделить первую строку нужного диапазона и при нажатой клавише Shift кликнуть по номеру последней строки нужного диапазона;

3. кликнуть курсором ввода текста в адресном окне строки формул, вписать диапазон строк (например 10:20) и нажать клавишу Enter.

Как выделить несколько строк не подряд?

Для выборочного выделения нескольких строк необходимо кликать по номерам нужных строк курсором-стрелкой при нажатой клавише Ctrl.

Как выделить строки по условию?

Если есть необходимость в выборочном выделении строк (для форматирования, копирования или других целей) например, содержащих заданный текст или наоборот, не содержащих определенный текст, можно использовать надстройку, позволяющую ускорить выделение строк по различным условиям. Ниже приведено диалоговое окно, позволяющее оценить возможности этой надстройки.

Надстройка позволяет:

1. Одним кликом мыши вызывать диалоговое окно макроса прямо из панели инструментов Excel;

2. Находить и выделять строки в зависимости от поставленного условия и заданных значений,

возможен ввод сразу нескольких текстовых значений разделенных знаком “;” (точка с запятой);

3. Выбирать одно из восьми условий для строк с искомым значением:

– совпадает с искомым значением;

– не совпадает с искомым значением;

– содержит мскомое значение;

– не содержит искомое значение;

– начинается с искомого значения;

– не начинается с искомого значения;

– заканчивается искомым значением;

– не заканчивается искомым значением.

4. При поиске текста учитывать либо не учитывать регистр (различать заглавные и строчные буквы);

5. При нахождении строки предусмотрена возможность выделять:

а) всю строку по ширине листа;

б) часть строки, ограниченную используемым диапазоном (от первой заполненной до последней заполненной ячейки);

в) часть строки, ограниченную выделенным (выбранным) диапазоном поиска.

6. Выбирать диапазон строк для поиска заданных значений и при необходимости вносить ограничения для выбранного диапазона, устанавливая начальную и конечную строку.

Источник: macros-vba.ru

Выделение строк таблицы в EXCEL в зависимости от условия в ячейке

Если значение в ячейке удовлетворяет определенному пользователем условию, то с помощью Условного форматирования можно выделить эту ячейку (например, изменить ее фон). В этой статье пойдем дальше – будем выделять всю строку таблицы, содержащую эту ячейку.

Пусть в диапазоне А6:С16 имеется таблица с перечнем работ, сроками выполнения и статусом их завершения (см. файл примера ).

Задача1 – текстовые значения

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

Решение1

Создадим небольшую табличку со статусами работ в диапазоне Е6:Е9 .

Выделим диапазон ячеек А7:С17 , содержащий перечень работ, и установим через меню Главная/ Цвет заливки фон заливки красный (предполагаем, что все работы изначально находятся в статусе Не начата ).

Убедимся, что выделен диапазон ячеек А7:С17 ( А7 должна быть активной ячейкой ). Вызовем команду меню Условное форматирование/ Создать правило / Использовать формулу для определения форматируемых ячеек .

  • в поле « Форматировать значения, для которых следующая формула является истинной » нужно ввести =$C7=$E$8 (в ячейке Е8 находится значение В работе ). Обратите внимание на использоване смешанных ссылок ;
  • нажать кнопку Формат ;
  • выбрать вкладку Заливка ;
  • выбрать серый цвет ;
  • Нажать ОК.

ВНИМАНИЕ : Еще раз обращаю внимание на формулу =$C7=$E$8 . Обычно пользователи вводят =$C$7=$E$8 , т.е. вводят лишний символ доллара.

Нужно проделать аналогичные действия для выделения работ в статусе Завершена . Формула в этом случае будет выглядеть как =$C7=$E$9 , а цвет заливки установите зеленый.

В итоге наша таблица примет следующий вид.

Примечание : Условное форматирование перекрывает обычный формат ячеек. Поэтому, если работа в статусе Завершена, то она будет выкрашена в зеленый цвет, не смотря на то, что ранее мы установили красный фон через меню Главная/ Цвет заливки .

Как это работает?

В файле примера для пояснения работы механизма выделения строк, создана дополнительная таблица с формулой =$C7=$E$9 из правила Условного форматирования для зеленого цвета. Формула введена в верхнюю левую ячейку и скопирована вниз и вправо.

Как видно из рисунка, в строках таблицы, которые выделены зеленым цветом, формула возвращает значение ИСТИНА.

В формуле использована относительная ссылка на строку ($C7, перед номером строки нет знака $). Отсутствие знака $ перед номером строки приводит к тому, что при копировании формулы вниз на 1 строку она изменяется на =$C8=$E$9 , затем на =$C9=$E$9 , потом на =$C10=$E$9 и т.д. до конца таблицы (см. ячейки G8 , G9 , G10 и т.д.). При копировании формулы вправо или влево по столбцам, изменения формулы не происходит, именно поэтому цветом выделяется вся строка.

В случае затруднений можно потренироваться на примерах, приведенных в статье Условное форматирование в MS EXCEL .

Прием с дополнительной таблицей можно применять для тестирования любых формул Условного форматирования .

Рекомендации

При вводе статуса работ важно не допустить опечатку. Если вместо слово Завершен а , например, пользователь введет Завершен о , то Условное форматирование не сработает.

Чтобы исключить некорректный ввод используйте идеи из статьи Ввод данных из списка значений. Часть1. Выпадающий список . В файле примера для ввода статусов работ использован аналогичный Выпадающий список .

Чтобы быстро расширить правила Условного форматирования на новую строку в таблице, выделите ячейки новой строки ( А17:С17 ) и нажмите сочетание клавиш CTRL+D . Правила Условного форматирования будут скопированы в строку 17 таблицы.

Задача2 – Даты

Предположим, что ведется журнал посещения сотрудниками научных конференций (см. файл примера лист Даты ).

К сожалению, столбец Дата посещения не отсортирован и необходимо выделить дату первого и последнего посещения каждого сотрудника. Например, сотрудник Козлов первый раз поехал на конференцию 24.07.2009, а последний раз – 18.07.2015.

Читайте также:  Как в excel добавить строки в таблицу

Сначала создадим формулу для условного форматирования в столбцах В и E. Если формула вернет значение ИСТИНА, то соответствующая строка будет выделена, если ЛОЖЬ, то нет.

В столбце D создана формула массива = МАКС(($A7=$A$7:$A$16)*$B$7:$B$16)=$B7 , которая определяет максимальную дату для определенного сотрудника.

Примечание: Если нужно определить максимальную дату вне зависимости от сотрудника, то формула значительно упростится = $B7=МАКС($B$7:$B$16) и формула массива не понадобится.

Теперь выделим все ячейки таблицы без заголовка и создадим правило Условного форматирования . Скопируем формулу в правило (ее не нужно вводить как формулу массива!).

Теперь предположим, что столбец с датами отсортировали и требуется выделить строки у которых даты посещения попадают в определенный диапазон.

Для этого используйте формулу =И($B23>$E$22;$B23

Для ячеек Е22 и Е23 с граничными датами (выделены желтым) использована абсолютная адресация $E$22 и $E$23. Т.к. ссылка на них не должна меняться в правилах УФ для всех ячеек таблицы.

Для ячейки В22 использована смешанная адресация $B23, т.е. ссылка на столбец В не должна меняться (для этого стоит перед В знак $), а вот ссылка на строку должна меняться в зависимости от строки таблицы (иначе все значения дат будут сравниваться с датой из В23 ).

Таким образом, правило УФ например для ячейки А27 будет выглядеть =И($B27>$E$22;$B27 , т.е. А27 будет выделена, т.к. в этой строке дата из В27 попадает в указанный диапазон (для ячеек из столбца А выделение все равно будет производиться в зависимости от содержимого столбца В из той же строки – в этом и состоит “магия” смешанной адресации $B23).

А для ячейки В31 правило УФ будет выглядеть =И($B31>$E$22;$B31 , т.е. В31 не будет выделена, т.к. в этой строке дата из В31 не попадает в указанный диапазон.

Источник: excel2.ru

Выделение ячеек в Microsoft Excel

Для того, чтобы производить различные действия с содержимым ячеек Excel, их нужно сначала выделить. Для этих целей в программе имеется несколько инструментов. Прежде всего, такое разнообразие связано с тем, что существует необходимость выделения различных групп ячеек (диапазонов, строк, столбцов), а также потребность отметить элементы, которые соответствуют определенному условию. Давайте выясним, как произвести данную процедуру различными способами.

Процесс выделения

В процессе выделения можно использовать как мышь, так и клавиатуру. Существуют также способы, где эти устройства ввода комбинируются друг с другом.

Способ 1: отдельная ячейка

Для того, чтобы выделить отдельную ячейку достаточно навести на неё курсор и кликнуть левой кнопкой мыши. Также такое выделение можно провести, используя кнопки на клавиатуре кнопки навигации «Вниз», «Вверх», «Вправо», «Влево».

Способ 2: выделение столбца

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

Есть и другой вариант решения данной задачи. Зажимаем кнопку Shift на клавиатуре и кликаем по верхней ячейке столбца. Затем, не отпуская кнопку кликаем по нижней. Можно производить действия и в обратном порядке.

Кроме того, для выделения столбцов в таблицах можно воспользоваться следующим алгоритмом. Выделяем первую ячейку колонки, отпускаем мышку и жмем на комбинацию клавиш Ctrl + Shift + стрелка вниз. При этом выделится весь столбец до последнего элемента, в котором содержаться данные. Важным условием для выполнения данной процедуры является отсутствие пустых ячеек в данной колонке таблицы. В обратном случае, будет отмечена только область до первого пустого элемента.

Если нужно выделить не просто колонку таблицы, а весь столбец листа, то в этом случае нужно просто кликнуть левой кнопкой мыши по соответствующему сектору горизонтальной панели координат, где буквами латинского алфавита помечены наименования столбцов.

Если нужно выделить несколько столбцов листа, то проводим мышкой с зажатой левой кнопкой по соответствующим секторам панели координат.

Есть и альтернативное решение. Зажимаем кнопку Shift и отмечаем первый столбец в выделяемой последовательности. Затем, не отпуская кнопку, кликаем по последнему сектору панели координат в последовательности колонок.

Если нужно выделить разрозненные колонки листа, то тогда зажимаем кнопку Ctrl и, не отпуская её, кликаем по сектору на горизонтальной панели координат каждого столбца, который нужно пометить.

Способ 3: выделение строки

По аналогичному принципу выделяются и строки в Экселе.

Для выделения одной строки в таблице просто проводим по ней курсором с зажатой кнопкой мышки.

Если таблица большая, то проще зажать кнопку Shift и последовательно кликнуть по первой и последней ячейке строки.

Также строки в таблицах можно отметить подобным образом, что и столбцы. Кликаем по первому элементу в столбце, а затем набираем сочетание клавиш Ctrl + Shift + стрелка вправо. Строка выделится до конца таблицы. Но опять же, обязательным условием в данном случае является наличие данных во всех ячейках строчки.

Для выделения всей строки листа делаем клик по соответствующему сектору вертикальной панели координат, где отображается нумерация.

Если нужно выделить подобным образом несколько соседних строк, то проводим мышкой с зажатой левой кнопкой по соответствующей группе секторов панели координат.

Также можно зажать кнопку Shift и произвести клик по первому и последнему сектору на панели координат того диапазона строк, который следует выделить.

Если нужно провести выделение разрозненных строк, то клик по каждому из секторов на вертикальной панели координат делаем с зажатой кнопкой Ctrl.

Способ 4: выделение всего листа

Существует два варианта этой процедуры для всего листа. Первый из них заключается в том, чтобы кликнуть по прямоугольной кнопке, расположенной на пересечении вертикальных и горизонтальных координат. После этого действия будут выделены абсолютно все ячейки на листе.

К этому же результату приведет нажатие комбинации клавиш Ctrl+A. Правда, если в это время курсор находится в диапазоне неразрывных данных, например, в таблице, то первоначально будет выделена только эта область. Лишь после повторного нажатия комбинации удастся выделить весь лист.

Способ 5: выделение диапазона

Теперь выясним, как выделить отдельные диапазоны ячеек на листе. Для того чтобы это сделать достаточно обвести курсором с зажатой левой кнопкой мыши определенную область на листе.

Диапазон можно выделить, зажав кнопку Shift на клавиатуре и последовательно кликнуть по верхней левой и нижней правой ячейке выделяемой области. Либо выполнив операцию в обратном порядке: кликнуть по нижней левой и верхней правой ячейке массива. Диапазон, находящийся между этими элементами, будет выделен.

Также существует возможность выделения разрозненных ячеек или диапазонов. Для этого, любым из вышеперечисленных способов нужно выделять в отдельности каждую область, которую пользователь хочет обозначить, но при этом обязательно должна быть зажата кнопка Ctrl.

Способ 6: применение горячих клавиш

Можно производить выделение отдельных областей с помощью горячих клавиш:

  • Ctrl+Home – выделение первой ячейки с данными;
  • Ctrl+End – выделение последней ячейки с данными;
  • Ctrl + Shift + End – выделение ячеек вниз до последней используемой;
  • Ctrl + Shift + Home – выделение ячеек вверх до начала листа.
Читайте также:  Высота строки в excel более 409

Данные варианты помогут значительно сэкономить время на выполнении операций.

Как видим, существует большое количество вариантов выделения ячеек и их различных групп с помощью клавиатуры или мышки, а также используя комбинацию этих двух устройств. Каждый пользователь может подобрать более удобный лично для себя стиль выделения в конкретной ситуации, ведь выделение одной или нескольких ячеек удобнее выполнять одним способом, а выделение целой строки или всего листа – другим.

Отблагодарите автора, поделитесь статьей в социальных сетях.

Источник: lumpics.ru

Выделение строк и столбцов в таблице Excel

Вы можете выделить ячейки и диапазоны в таблице так, как вы выбираете их на листе, но при этом выделение строк и столбцов в таблице отличается от выбора строк и столбцов листа.

Выполните указанное действие

Столбец таблицы с заголовком или без него

Щелкните в таблице верхний край столбца или его заголовка. Появится следующая стрелка выделения, указывающая, что при нажатии кнопки выделяется столбец.

Примечание: Щелчок по верхнему краю выделит данные столбца таблицы; Дважды щелкните его, чтобы выделить весь столбец таблицы.

Вы также можете щелкнуть в любом месте столбца таблицы, а затем нажать клавиши CTRL + ПРОБЕЛ, либо перейти к первой ячейке столбца таблицы, а затем нажать сочетание клавиш CTRL + SHIFT + стрелка вниз.

Примечание: Чтобы выделить данные столбца таблицы, нажмите клавиши CTRL + ПРОБЕЛ. Дважды нажмите сочетание клавиш CTRL + ПРОБЕЛ, чтобы выделить весь столбец таблицы.

Щелкните левую границу строки таблицы. Появится следующая стрелка выделения, указывающая, что при нажатии кнопки выделяется строка.

Вы можете щелкнуть первую ячейку в строке таблицы, а затем нажать сочетание клавиш CTRL + SHIFT + стрелка вправо.

Все строки и столбцы таблицы

Щелкните левый верхний угол таблицы. Появится следующая стрелка выделения, указывающая на то, что нажатие кнопки выделяет данные таблицы во всей таблице.

Дважды щелкните левый верхний угол таблицы, чтобы выделить всю таблицу, в том числе заголовки таблиц.

Вы также можете щелкнуть в любом месте таблицы, а затем нажать клавиши CTRL + A, чтобы выделить таблицу данных во всей таблице, или щелкнуть верхнюю левую ячейку в таблице, а затем нажать клавиши CTRL + SHIFT + END.

Чтобы выделить таблицу целиком вместе с заголовками, дважды нажмите клавиши CTRL+A.

Дополнительные сведения

Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.

См. также

Примечание: Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Была ли информация полезной? Для удобства также приводим ссылку на оригинал (на английском языке).

Источник: support.office.com

Координатное выделение

У вас большой монитор, но таблицы, с которыми вы работаете – еще больше. И, пробегая взглядом по экрану в поисках нужной информации, всегда есть шанс “соскользнуть” взглядом на соседнюю строчку и посмотреть не туда. Я даже знаю людей, который для таких случаев постоянно держат недалеко от себя деревянную линейку, чтобы приложить ее к строке на мониторе. Технологии будущего!

А если при движении активной ячейки по листу будет подсвечиваться текущая строка и столбец? Своего рода координатное выделение примерно такого вида:

Поудобнее, чем линейка, правда?

Есть несколько способов разной сложности, чтобы реализовать такое. Каждый способ – со своими плюсами и минусами. Давайте разберем их детально.

Способ 1. Очевидный. Макрос, выделяющий текущую строку и столбец

Самый очевидный путь для решения нашей проблемы “в лоб” – нам нужен макрос, который будет отслеживать изменение выделения на листе и выделять целую строку и столбец для текущей ячейки. Также желательно иметь возможность при необходимости включать и отключать эту функцию, чтобы такое крестообразное выделение не мешало нам вводить, например, формулы, а работало только тогда, когда мы просматриваем список в поисках нужной информации. Это приводит нас к трем макросам (выделения, включения и выключения), которые нужно будет добавить в модуль листа.

Откройте лист со таблицей, в которой хотите получить такое координатное выделение. Щелкните правой кнопкой мыши по ярлычку листа и выберите в контекстном меню команду Исходный текст (Source Code). Должно открыться окно редактора Visual Basic. Скопируйте в него этот текст этих трех макросов:

Измените адрес рабочего диапазона на свой – именно в пределах этого диапазона и будет работать наше выделение. Затем закройте редактор Visual Basic и вернитесь в Excel.

Нажмите сочетание клавиш ALT+F8, чтобы открыть окно со списком доступных макросов. Макрос Selection_On, как нетрудно догадаться, включает координатное выделение на текущем листе, а макрос Selection_Off – выключает его. В этом же окне, нажав кнопку Параметры (Options) можно назначить этим макросам сочетания клавиш для удобного запуска.

Плюсы этого способа:

  • относительная простота реализации
  • выделение – операция безобидная и никак не изменяет содержимое или форматирование ячеек листа, все остается как есть

Минусы этого способа:

  • такое выделение некорректно работает в том случае, если на листе есть объединенные ячейки – выделяются сразу все строки и столбцы, входящие в объединение
  • если случайно нажать клавишу Delete, то очистится не только активная ячейка, а вся выделенная область, т.е. удалятся данные из всей строки и столбца

Способ 2. Оригинальный. Функция ЯЧЕЙКА + Условное форматирование

Этот способ хотя и имеет пару недостатков, мне представляется весьма изящным. Реализовать что-либо, используя только встроенные средства Excel, минимально влезая в программирование на VBA – высший пилотаж 😉

Способ основан на использовании функции ЯЧЕЙКА (CELL), которая может выдавать массу различной информации по заданной ячейке – высоту, ширину, номер строки-столбца, числовой формат и т.д.. Эта функция имеет два аргумента:

  • кодовое слово для параметра, например “столбец” или “строка”
  • адрес ячейки, для которой мы хотим определить значение этого параметра

Хитрость в том, что второй аргумент не является обязательным. Если он не указан, то берется текущая активная ячейка.

Вторая составляющая этого способа – условное форматирование. Эта крайне полезная функция Excel позволяет автоматически форматировать ячейки, если они удовлетворяют заданным условиям. Если соединить эти две идеи в одно целое, то получим следующий алгоритм реализации нашего координатного выделения через условное форматирование:

  1. Выделяем нашу таблицу, т.е. те ячейки, в которых в будущем должно отображаться координатное выделение.
  2. В Excel 2003 и более старших версиях открываем меню Формат – Условное форматирование – Формула (Format – Conditional Formatting – Formula) . В Excel 2007 и новее – жмем на вкладке Главная (Home) кнопку Условное форматирование – Создать правило (Conditional Formatting – Create Rule) и выбираем тип правила Использовать формулу для определения форматируемых ячеек (Use formula)
  3. Вводим формулу для нашего координатного выделения:

Эта формула проверяет, не совпадает ли номер столбца каждой ячейки в таблице с номером столбца текущей ячейки. Аналогично со столбцами. Таким образом закрашенными окажутся только те ячейки, у которых либо номер столбца, либо номер строки совпадает с текущей ячейкой. А это и есть крестообразное координатное выделение, которого мы хотим добиться.

  • Нажмите кнопку Формат (Format) и задайте цвет заливки.
  • Все почти готово, но остался один нюанс. Дело в том, что Excel не считает изменение выделения изменением данных на листе. И, как следствие, не запускает пересчет формул и перекраску условного форматирования только при изменении положения активной ячейки. Поэтому добавим в модуль листа простой макрос, который будет это делать. Щелкните правой кнопкой мыши по ярлычку листа и выберите в контекстном меню команду Исходный текст (Source Code). Должно открыться окно редактора Visual Basic. Скопируйте в него этот текст этого простого макроса:

    Теперь при изменении выделения будет запускаться процесс пересчета формулы с функцией ЯЧЕЙКА в условном форматировании и заливаться текущая строка и столбец.

    Плюсы этого способа:

    • Условное форматирование не нарушает пользовательское форматирование таблицы
    • Этот вариант выделения корректно работает с объединенными ячейками.
    • Нет риска удалить целую строку и столбец с данными при случайном нажатии Delete.
    • Макросы используются минимально

    Минусы этого способа:

    • Формулу для условного форматирования надо вводить вручную.
    • Нет быстрого способа включить-выключить такое форматирование – оно включено всегда, пока не будет удалено правило.

    Способ 3. Оптимальный. Условное форматирование + макросы

    Золотая середина. Используем механизм отслеживания выделения на листе при помощи макросов из способа-1 и добавим к нему безопасное выделение цветом с помощью условного форматирования из способа-2.

    Откройте лист со таблицей, в которой хотите получить такое координатное выделение. Щелкните правой кнопкой мыши по ярлычку листа и выберите в контекстном меню команду Исходный текст (Source Code). Должно открыться окно редактора Visual Basic. Скопируйте в него этот текст этих трех макросов:

    Не забудьте изменить адрес рабочего диапазона на адрес своей таблицы. Закройте редактор Visual Basic и вернитесь в Excel. Чтобы использовать добавленные макросы, нажмите сочетание клавиш ALT+F8 и действуйте аналогично способу 1.

    Способ 4. Красивый. Надстройка FollowCellPointer

    Excel MVP Jan Karel Pieterse родом из Нидерландов раздает у себя на сайте бесплатную надстройку FollowCellPointer(36Кб), которая решает ту же задачу, отрисовывая с помощью макросов графические линии-стрелки для подсветки текущей строки и столбца:

    Красивое решение. Не без глюков местами, но попробовать точно стоит. Качаем архив, распаковываем на диск и устанавливаем надстройку:

    • в Excel 2003 и старше – через меню Сервис – Надстройки – Обзор (Tools – Add-Ins – Browse)
    • в Excel 2007 и новее – через Файл – Параметры – Надстройки – Перейти – Обзор (File – Excel Options – Add-Ins – Go to – Browse)

    Источник: www.planetaexcel.ru

    Выделить активную строку цветом в таблице Excel

    Когда приходится работать с большим объемом данных в Excel, где строки сильно растянуты и не умещаются в один экран, сложно сравнить значения в одной и той же строке. Постоянно приходится передвигать горизонтальную полосу прокрутки. Работа была бы более удобной если бы целая активная строка была бы выделена цветом – как курсор на целую строку. Чтобы выделить активную строку или столбец цветом, создадим свою функцию в Excel с помощью макроса и с комбинируем ее с условным форматированием.

    Подсветка строки в Excel цветом

    Чтобы создать свой широкий курсов на целую строку в Excel, необходимо создать макрос и использовать его вместе с условным форматированием. Для примера создадим таблицу с широкими строками и большим количеством столбцов. Нам нужно выделить строку цветом по условию Excel. Например, если активная ячейка находится в строке 2, тогда выделить цветом всю строку 2 (в пределах таблицы или на весь лист). Для примера создадим таблицу с широкими строками и большим количеством столбцов:

    Подсветка текущей строки в Excel цветом:

    1. Откройте редактор VBA для этого выберите инструмент: «РАЗРАБОТЧИК»-«Код»-«Visual Basic». Или нажмите комбинацию горячих клавиш ALT+F11.
    2. В правом окне к активному проекту добавьте новый модуль. Для того в редакторе VBA выберите опцию: «Insert»-«Module»
    3. В окне модуля вставьте этот VBA-код макроса:
    4. Не закрывая окно VBA-редактора перейдите на рабочий лист с исходной таблицей. Выделите целую вторую строку таблицы A2:H2 и выберите инструмент: «ГЛАВНАЯ»-«Условное форматирование»-«Создать правило»-«Использовать формулу для определения форматированных ячеек:».
    5. В полю ввода введите формулу:
    6. Щелкните по кнопке «Формат» и на вкладке «Заливка» укажите зеленый цвет. На всех окнах жмем ОК.
    7. Скопируйте вторую строку таблицы.
    8. Выделите остальные строки и выберите инструмент: «ГЛАВНАЯ»-«Вставить»-«Специальная вставка»-«Форматы» (или нажмите комбинацию клавиш CTRL+ALT+V, потом отметить форматы и нажать ОК). Или воспользуйтесь инструментом: «ГЛАВНАЯ»-«Буфер обмена»-«Формат по образцу».
    9. Вернитесь к редактору VBA и в окне «Project» дважды щелкните по «Лист1». В появившемся окне вставьте следующий VBA-код макроса:
    10. Сохраните и закройте редактор VBA.

    В результате происходит выделение строки условным форматированием только там, где находится активная ячейка. Эффект широкого курсора таблицы для комфортного просмотра данных с большим объемом информации. Сделав активной любую ячейку таблицы и сразу же выделяется цветом строка в которой находится данная ячейка.

    Полезный вопрос! А как же выделить активный столбец цветом? Аналогичным методом реализовывается с помощью макроса не только подсветка цветом активной строки, но и столбца. Для этого:

    1. В модуль где находится код подсветки строки VBA-макроса, добавим код новой функции АктивныйСтолбец:
    2. Добавим новое правило в условном форматировании для нашей таблицы в диапазоне A1:A7. Теперь в новом правиле пишем функцию АктивныйСтолбец(), а вместо функции СТРОКА – СТОЛБЕЦ. И указываем синий цвет форматирования заливки ячейки.
    3. Проверим все созданные правила для таблицы. Перейдите в ячейку A2 и ввыберите инструмент: «ГЛАВНАЯ»-«Условное форматирование»-«Управление правилами». Диспетчер правил условного форматирования должен выглядеть так:
    4. Скопируйте формат столбца A1:A7 в остальные столбцы таблицы диапазона B1:H7. Например, с помощью инструмента: «ГЛАВНАЯ»-«Буфер обмена»-«Формат по образцу».
    5. Результат превышает ожидания. Идеальный курсор для просмотра огромных таблиц с большим количеством данных на множестве строк и столбцов:

    Принцип действия создания пользовательского курсора для таблицы

    Применяемая в условном форматировании созданная нами функция VBA =АктивнаяСтрока() позволяет нам получить номер текущей строки в которой стала активной любая из ее ячеек. Результат вычисления пользовательской функции =АктивнаяСтрока() сравнивается с результатом функции =СТРОКА(), которая также возвращает номер текущей строки в данном моменте вычисления условного форматирования.

    Так как обе функции выполняются при активной ячейке в одной и той же строке их значения равны между собой и возвращают общее логическое значение ИСТИНА. В результате чего происходит выделение строки цветом по условию. Если значение ИСТИНА, тогда присваивается формат цвета для целой активной строки таблицы.

    Источник: exceltable.com