열 B의 값이 변경되면 행 색상을 변경하는 매크로를 작성하려고합니다. A 열은 1과 0을 사용하여 제어하는 열입니다. 즉, 열 B는 동일하게 유지되는 한 열 A는 1을 유지합니다. B가 변경 될 때마다 A가 0으로 반전됩니다.VBA - 필터링 된 경우에도 열 값이 변경 될 때 행 음영 변경
열 B의 값이 바뀌면 행을 올바르게 색칠 할 수 있지만 데이터를 필터링 할 때 문제가 발생합니다. 예를 들어 B2-B4를 "test1"로 설정하고 B5-B7을 "test2"로 설정하고 B8-B10을 "test3"으로 설정 한 다음 "test2"가 포함되지 않도록 B 열을 필터링한다고합시다. 원래 행은 열 값이 변경된 곳에서 색상이 다르게 표시되지만 행 B2-B4와 B8-B10은 같은 색상으로 설정되어 "test2"행이 숨겨져 있기 때문에 터치됩니다. 변경 사항이있을 때 제대로 색이되도록 심지어 행을 필터링 한 후 나는 그것을 고칠 수있는 방법
Sub ColorRows()
Dim This As Long
Dim Previous As Long
Dim LastRow As Long
Dim Color As Integer
Dim R As Long
LastRow = ActiveSheet.Range("A" & Rows.Count).End(xlUp).Row
RwColor = Array(15,0)
Color = 0
For R = 2 To LastRow
This = Cells(R, 1).Value
Previous = Cells(R - 1, 1).Value
If This <> Previous Then Color = 1 - Color
Range("A" & R & ":M" & R).Select
Selection.Interior.ColorIndex = RwColor(Color)
Next R
End Sub
: 여기
내가 행을 색칠하는 데 사용되는 코드입니다,하지만 필터링이 작동하지 않습니다 열 값에?)1. 코드 모듈에서 UDF로 아래의 코드를 삽입 :
안녕하세요! 시도한 코드를 게시 할 수 있습니까? 우리가 문제를 정확하게 지적하는 것이 더 쉽습니다. – Stefan