Перейти к содержимому

Автоматическое выделение активной строки и столбца в Excel (Полное руководство)

Author: Xiaoyang Last Modified: 2025-06-05

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

Автоматическое выделение активной строки и столбца в Excel


Видео: Автоматическое выделение активной строки и столбца в Excel

 


Автоматическое выделение активной строки и столбца с помощью кода VBA

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

Шаг 1: Откройте рабочий лист, где вы хотите автоматически выделять активную строку и столбец

Шаг 2: Откройте редактор модуля листа VBA и скопируйте код

  1. Щелкните правой кнопкой мыши имя листа и выберите "Просмотр кода" из контекстного меню, см. скриншот:
    Right click the sheet name, and choose View Code from the context menu
  2. В открывшемся редакторе модуля листа VBA скопируйте и вставьте следующий код в пустой модуль. См. скриншот:
    Код VBA: автоматическое выделение строки и столбца выбранной ячейки
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    'Update by Extendoffice
        Dim rowRange As Range
        Dim colRange As Range
        Dim activeCell As Range
        Set activeCell = Target.Cells(1, 1)
        Set rowRange = Rows(activeCell.Row)
        Set colRange = Columns(activeCell.Column)
         Cells.Interior.ColorIndex = xlNone
        rowRange.Interior.Color = RGB(248, 150, 171)
        colRange.Interior.Color = RGB(173, 233, 249)
    End Sub
    
    Советы: Настройка кода
    • Чтобы изменить цвет выделения, вам просто нужно изменить значение RGB в следующих скриптах:
      rowRange.Interior.Color = RGB(248, 150, 171)
      colRange.Interior.Color = RGB(173, 233, 249)
    • Чтобы выделить только всю строку выбранной ячейки, удалите или закомментируйте (добавьте апостроф в начале) эту строку:
      colRange.Interior.Color = RGB(173, 233, 249)
    • Чтобы выделить только весь столбец выбранной ячейки, удалите или закомментируйте (добавьте апостроф в начале) эту строку:
      rowRange.Interior.Color = RGB(248, 150, 171)

    copy and paste the code into the module
  3. Затем закройте окно редактора VBA, чтобы вернуться к рабочему листу.

Результат:

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

Примечания:
  • Этот код очистит цвет фона всех ячеек в рабочем листе, поэтому избегайте использования этого решения, если у вас есть ячейки с пользовательской раскраской.
  • Запуск этого кода отключит функцию "Отменить" на листе, что означает, что вы не сможете исправить ошибки, нажав комбинацию клавиш "Ctrl" + "Z".
  • Этот код не будет работать в защищенном рабочем листе.
  • Чтобы прекратить выделение строки и столбца выбранной ячейки, вам нужно удалить ранее добавленный код VBA. После этого, чтобы сбросить выделение, нажмите "Главная" > "Цвет заливки" > "Без заливки".

Автоматическое выделение активной строки и столбца всего одним кликом Kutools

Столкнулись с ограничениями кода VBA в Excel? Функция "Сетка фокусировки" из "Kutools для Excel" — это ваше идеальное решение! Разработанная для устранения недостатков VBA, она предлагает разнообразные стили выделения для улучшения работы с листами. Благодаря возможности применения этих стилей ко всем открытым книгам, "Kutools" обеспечивает последовательный и эффективный процесс управления данными с привлекательным визуальным оформлением.

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

После установки Kutools для Excel, пожалуйста, нажмите "Kutools" > "Сетка фокусировки", чтобы включить эту функцию. Теперь вы можете видеть, что строка и столбец активной ячейки выделяются немедленно. Это выделение динамически смещается вслед за изменением выбора ячейки. Смотрите демонстрацию ниже:

Основные преимущества функции Сетка фокусировки:
  • Сохраняет исходные цвета фона ячеек:
    В отличие от кода VBA, эта функция уважает существующее форматирование вашего рабочего листа.
  • Работает в защищенных листах:
    Эта функция работает бесперебойно в защищенных листах, что делает её идеальной для управления конфиденциальными или общими документами без ущерба безопасности.
  • Не влияет на функцию Отмены:
    С помощью этой функции вы сохраняете полный доступ к функции отмены в Excel. Это гарантирует, что вы легко можете отменить изменения, добавляя дополнительный уровень безопасности при манипуляциях с данными.
  • Стабильная производительность с большими объемами данных:
    Эта функция предназначена для эффективной обработки больших наборов данных, обеспечивая стабильную производительность даже в сложных и насыщенных данными таблицах.
  • Множество стилей выделения:
    Эта функция предлагает множество вариантов выделения, позволяя выбрать из разных стилей и цветов, чтобы сделать активную ячейку строки, столбца или строки и столбца выделяющейся так, как лучше всего соответствует вашим предпочтениям и потребностям.
    more options of Grid Focus feature
Советы:
  • Чтобы отключить эту функцию, пожалуйста, нажмите "Kutools" > "Сетка фокусировки" снова, чтобы закрыть эту функцию;
  • Чтобы применить эту функцию, пожалуйста, скачайте и установите Kutools для Excel.

Автоматическое выделение активной строки и столбца с помощью Условного форматирования

В Excel вы также можете настроить Условное форматирование для автоматического выделения активной строки и столбца. Для настройки этой функции, пожалуйста, следуйте этим шагам:

Шаг 1: Выберите диапазон данных

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

Шаг 2: Доступ к Условному форматированию

Нажмите "Главная" > "Условное форматирование" > "Новое правило", см. скриншот:
Click Home > Conditional Formatting > New Rule

Шаг 3: Настройте операции в Новом правиле форматирования

  1. В диалоговом окне "Новое правило форматирования" выберите "Использовать формулу для определения форматируемых ячеек" из списка "Выберите тип правила".
  2. В поле "Форматировать значения, где эта формула истинна" введите одну из этих формул, в этом примере я применю третью формулу для выделения активной строки и столбца.
    Для выделения активной строки:
    =CELL("row")=ROW()
    Для выделения активного столбца:
    =CELL("col")=COLUMN()
    Для выделения активной строки и столбца:
    =OR(CELL("row")=ROW(), CELL("col")= COLUMN())
  3. Затем нажмите кнопку "Формат".
    Set the operations in the New Formatting Rule
  4. В следующем диалоговом окне "Формат ячеек", на вкладке "Заливка", выберите цвет для выделения активной строки и столбца по необходимости, см. скриншот:
     under the Fill tab, choose one color to highlight the row or column
  5. Затем нажмите "ОК" > "ОК", чтобы закрыть диалоговые окна.

Результат:

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

Советы: 
  • Действительно, хотя подход с использованием Условного форматирования для выделения в Excel предлагает решение, он не такой гладкий, как использование "VBA" и функции "Сетка фокусировки". Этот метод требует ручного пересчета листа (путем нажатия клавиши "F9").
    Чтобы включить автоматический пересчет вашего рабочего листа, вы можете добавить простой код VBA в модуль кода целевого листа. Это автоматизирует процесс обновления, гарантируя, что выделение обновляется немедленно при выборе разных ячеек без нажатия клавиши "F9". Пожалуйста, щелкните правой кнопкой мыши имя листа, затем выберите "Просмотр кода" из контекстного меню. Затем скопируйте и вставьте следующий код в модуль листа:
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
      Target.Calculate
    End Sub
    
  • Условное форматирование сохраняет существующее форматирование, которое вы вручную применили к вашему рабочему листу.
  • Условное форматирование известно своей нестабильностью, особенно при применении к очень большим наборам данных. Его широкое использование может потенциально замедлить производительность книги, влияя на эффективность обработки данных и навигации.
  • Функция CELL доступна только в версиях Excel 2007 и выше, этот метод не совместим с более ранними версиями Excel.

Сравнение вышеуказанных методов

Функция Код VBA Условное форматирование Kutools для Excel
Сохранение цвета фона ячейки Нет Да Да
Поддерживает функцию Отмены Нет Да Да
Стабильно при больших наборах данных Нет Нет Да
Работает в защищенных листах Нет Да Да
Применяется ко всем открытым книгам Только текущий лист Только текущий лист Все открытые книги
Требуется ручное обновление (F9) Нет Да Нет

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


Связанные статьи:

  • Автоматическое выделение строки и столбца активной ячейки
  • При просмотре большого рабочего листа с множеством данных вы можете захотеть выделить строку и столбец выбранной ячейки, чтобы легко и интуитивно читать данные и избежать их неправильного прочтения. Здесь я могу представить вам несколько интересных приемов для выделения строки и столбца текущей ячейки, когда ячейка меняется, столбец и строка новой ячейки выделяются автоматически.
  • Выделение каждой второй строки или столбца в Excel
  • В большом рабочем листе выделение или заливка каждой второй или каждого N-го ряда или столбца улучшает видимость и читаемость данных. Это не только делает рабочий лист аккуратнее, но и помогает быстрее понять данные. В этой статье мы проведем вас через различные методы затенения каждой второй или N-й строки или столбца, помогая вам представить свои данные более привлекательно и наглядно.
  • Выделение всей строки при прокрутке
  • Если у вас большой рабочий лист с несколькими столбцами, будет сложно различить данные в этой строке. В этом случае вы можете выделить всю строку активной ячейки, чтобы быстро и легко просматривать данные в этой строке при прокрутке горизонтальной полосы прокрутки. В этой статье я расскажу о некоторых приемах для решения этой проблемы.
  • Выделение строк на основе выпадающего списка
  • В этой статье мы поговорим о том, как выделять строки на основе выпадающего списка, возьмем следующий скриншот в качестве примера: когда я выбираю “In Progress” из выпадающего списка в столбце E, мне нужно выделить эту строку красным цветом, когда я выбираю “Completed” из выпадающего списка, мне нужно выделить эту строку синим цветом, и когда я выбираю “Not Started”, зеленый цвет будет использоваться для выделения строки.