VBA – 셀 강조 표시하기
In this Article
이 튜토리얼에서는 VBA에서 셀 또는 셀 범위를 강조 표시하는 방법을 보여드립니다.
VBA에서 Excel의 조건부 서식을 사용하여 셀을 강조 표시하거나 다른 방법을 사용하여 비슷한 효과를 낼 수 있습니다.
셀 강조 표시하기
VBA에서 셀을 강조 표시하려면 아래와 같이 간단한 프로시저를 사용할 수 있습니다.
Sub HighlightCell()
ActiveCell.Interior.Color = vbRed
End Sub
셀 범위 강조 표시하기
마찬가지로 셀 범위를 선택하고 범위 내의 모든 셀을 강조 표시할 수 있습니다.
Sub HighlightRange()
Range("A1:A10").Select
Selection.Interior.Color = vbRed
End Sub
셀 값에 따라 셀 강조 표시하기
셀을 강조 표시하는 조건을 추가하려면 IF 문을 사용하여 셀의 값이 특정 값(이 경우 10보다 큰 값) 이상인 경우 셀을 강조 표시할 수 있습니다.
Sub HightlightCell_1
If ActiveCell.Value > 10 then
ActiveCell.Interior.Color = vbRed
End If
End Sub
셀 값에 따라 셀 범위 강조 표시하기
셀 범위의 값을 확인하려면 각 셀을 반복하여 값을 확인하고 조건 결과 값에 따라 셀을 강조 표시해야 합니다. 아래 예제에서는 먼저 범위 내에 있는 값이 숫자인지 확인한 다음 해당 숫자가 10보다 큰지 테스트합니다.
Sub HighlightRangeOfCells()
Dim rng As Range
For Each rng In Range("A1:A10")
If IsNumeric(rng.Value) Then
If rng.Value > 10 Then
rng.Interior.Color = vbRed
End If
End If
Next rng
End Sub
조건부 서식을 사용하여 셀 강조 표시하기
VBA에서 셀에 조건부 서식을 적용하여 셀을 강조 표시할 수도 있습니다. 아래 예제에서는 범위의 각 셀에 조건부 서식을 적용합니다. 위 예제에서와 같이 먼저 셀에 숫자 값이 있는지 테스트한 다음 조건부 서식을 적용합니다.
Sub SetConditionalFormatting()
Dim rng As Range
For Each rng In Range("A1:A10")
If IsNumeric(rng.Value) Then
rng.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="=10"
rng.FormatConditions(1).Interior.Color = vbRed
rng.FormatConditions(1).StopIfTrue = False
End If
Next rng
End Sub
선택이 변경될 때 셀 강조 표시하기
현재 워크시트에서 셀 포인터가 움직일 때 셀의 강조 표시를 동적으로 만들려면 Worksheet_Change 이벤트를 사용하면 됩니다. 아래 예제에서는 시트의 모든 강조 표시가 제거되고(조건부 서식에 의해 수행된 강조 표시 제외) ActiveCell이 빨간색으로 강조 표시됩니다(ColorIndex = 3).
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNone
Target.Interior.ColorIndex = 3
End Sub