Как выделить ячейку или строку с помощью флажка в Excel?
Как показано на скриншоте ниже, вам нужно выделить строку или ячейку с помощью флажка. Когда флажок отмечен, указанная строка или ячейка будут автоматически выделены. Но как это сделать в Excel? В этой статье мы покажем вам два способа достижения этого.
Выделение ячейки или строки с помощью флажка через Условное форматирование
Выделение ячейки или строки с помощью флажка через код VBA
Выделение ячейки или строки с помощью флажка через Условное форматирование
Вы можете создать правило Условного форматирования для выделения ячейки или строки с помощью флажка в Excel. Пожалуйста, выполните следующие действия.
ШАГ ПЕРВЫЙ: Свяжите все флажки с определенной ячейкой
1. Вам нужно вставить флажки в ячейки по одному вручную, нажав Разработчик > Вставить > Флажок (Элемент управления формы).
2. Теперь флажки были вставлены в ячейки столбца I. Пожалуйста, выберите первый флажок в I1, введите формулу =$J1 в строку формул и затем нажмите клавишу Ввод.
Совет: Если вы не хотите, чтобы значения ассоциировались с соседними ячейками флажков, вы можете связать флажок с ячейкой другого листа, например =Sheet3!$E1.
3. Повторите шаг 1, пока все флажки не будут связаны с соседними ячейками или ячейками на другом листе.
Примечание: Все связанные ячейки должны быть последовательными и находиться в одном столбце.
ШАГ ВТОРОЙ: Создайте правило Условного форматирования
Теперь вам нужно создать правило Условного форматирования пошагово, как описано ниже.
1. Выберите строки, которые необходимо выделить с помощью флажков, затем нажмите Условное форматирование > Новое правило под вкладкой Главная. Смотрите скриншот:
2. В диалоговом окне Новое правило форматирования вам нужно:
2.1 Выберите параметр Использовать формулу для определения ячеек для форматирования в поле Выберите тип правила;
2.2 Введите формулу =IF($J1=TRUE,TRUE,FALSE) в поле Форматировать значения, где эта формула истинна ;
Или =IF(Sheet3!$E1=TRUE,TRUE,FALSE) если флажки связаны с другим листом.
2.3 Нажмите кнопку Формат, чтобы указать цвет выделения для строк;
2.4 Нажмите кнопку ОК. Смотрите скриншот:
Примечание: В формуле $J1 или $E1 — это первая связанная ячейка для флажков, и убедитесь, что ссылка на ячейку была изменена на абсолютную по столбцу (J1 > $J1 или E1 > $E1).
Теперь правило Условного форматирования создано. При отметке флажков соответствующие строки будут автоматически выделены, как показано на скриншоте ниже.
Выделение ячейки или строки с помощью флажка через код VBA
Следующий код VBA также может помочь вам выделить ячейку или строку с помощью флажка в Excel. Пожалуйста, выполните следующие действия.
1. На листе, где вам нужно выделить ячейку или строку с помощью флажка. Щелкните правой кнопкой мыши по вкладке Листа и выберите Просмотр кода из контекстного меню, чтобы открыть окно Microsoft Visual Basic for Applications.
2. Затем скопируйте и вставьте приведенный ниже код VBA в окно Кода.
Код VBA: Выделение строки с помощью флажка в Excel
Sub AddCheckBox()
Dim xCell As Range
Dim xRng As Range
Dim I As Integer
Dim xChk As CheckBox
On Error Resume Next
InputC:
Set xRng = Application.InputBox("Please select the column range to insert checkboxes:", "Kutools for Excel", Selection.Address, , , , , 8)
If xRng Is Nothing Then Exit Sub
If xRng.Columns.Count > 1 Then
MsgBox "The selected range should be a single column", vbInformation, "Kutools fro Excel"
GoTo InputC
Else
If xRng.Columns.Count = 1 Then
For Each xCell In xRng
With ActiveSheet.CheckBoxes.Add(xCell.Left, _
xCell.Top, xCell.Width = 15, xCell.Height = 12)
.LinkedCell = xCell.Offset(, 1).Address(External:=False)
.Interior.ColorIndex = xlNone
.Caption = ""
.Name = "Check Box " & xCell.Row
End With
xRng.Rows(xCell.Row).Interior.ColorIndex = xlNone
Next
End If
With xRng
.Rows.RowHeight = 16
End With
xRng.ColumnWidth = 5#
xRng.Cells(1, 1).Offset(0, 1).Select
For Each xChk In ActiveSheet.CheckBoxes
xChk.OnAction = ActiveSheet.Name + ".InsertBgColor"
Next
End If
End Sub
Sub InsertBgColor()
Dim xName As Integer
Dim xChk As CheckBox
For Each xChk In ActiveSheet.CheckBoxes
xName = Right(xChk.Name, Len(xChk.Name) - 10)
If (xName = Range(xChk.LinkedCell).Row) Then
If (Range(xChk.LinkedCell) = "True") Then
Range("A" & xName, Range(xChk.LinkedCell).Offset(0, -2)).Interior.ColorIndex = 6
Else
Range("A" & xName, Range(xChk.LinkedCell).Offset(0, -2)).Interior.ColorIndex = xlNone
End If
End If
Next
End Sub
3. Нажмите клавишу F5 для запуска кода. (Примечание: вы должны поместить курсор в первую часть кода, чтобы применить клавишу F5). В появившемся диалоговом окне Kutools для Excel выберите диапазон, куда вы хотите вставить флажки, и нажмите кнопку ОК. Здесь я выбираю диапазон I1:I6. Смотрите скриншот:
4. Затем флажки будут вставлены в выбранные ячейки. Отметьте любой из флажков, и соответствующая строка будет автоматически выделена, как показано на скриншоте ниже.
Связанные статьи:
- Как изменить значение или цвет указанной ячейки при отметке флажка в Excel?
- Как вставить отметку даты в ячейку при отметке флажка в Excel?
- Как сделать флажок отмеченным на основе значения ячейки в Excel?
- Как фильтровать данные на основе флажка в Excel?
- Как скрыть флажок, когда строка скрыта в Excel?
- Как создать выпадающий список с несколькими флажками в Excel?
Лучшие инструменты для повышения продуктивности работы с Office
Ускорьте работу в Excel с Kutools для Excel и ощутите новую степень эффективности. Kutools для Excel предлагает более300 расширенных функций для повышения продуктивности и экономии времени. Нажмите здесь, чтобы выбрать нужную вам функцию...
Office Tab добавляет вкладки в Office и делает вашу работу намного проще
- Включите редактирование и чтение с вкладками в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна, а не в отдельных окнах.
- Увеличьте свою продуктивность на50% и сократите сотни лишних кликов мышью каждый день!