2014-06-17 2 views
0

지정된 행 (8)의 모든 셀을 반복하는 매크로에 대한 도움말을 찾고 있습니다. 그러나 문제를 복잡하게하기 위해 나는 8 행에 많은 세포가 있기 때문에 특정 색 (파란색)의 세포에만 관심이 있지만 일부는 녹색입니다. 더욱 파란색 세포의 부분 집합의 난 단지 텍스트 "제품"을 포함하는 그 사람들을 강조하고 싶다 "UOM"또는 "팩 사이즈"와 "새로운 단가를"문제를 복잡하게하기 위해 는 일단 내가 좋아하는 것 발견 이러한 셀이 헤더 인 열을 강조 표시합니다. 그런 다음 해당 셀을 복사하여 새 통합 문서에 붙여 넣으 려합니다.Excel에서 VBA를 사용하여 특정 색상의 셀 범위를 반복합니다.

그것은이 작업을 수행 할 수있는 몇 가지 방법이 있습니다 것, 내가 할 수 중 하나를 셀이 지정된 텍스트가 포함 된 셀이 파란색이면 조건이 강조 열 인과 8 행의 모든 ​​셀을 반복. 그러나 이것은 비효율적 인 것처럼 보인다. 또는 녹색 셀에 도달하면 모든 셀을 반복하여 멈출 수 있습니다. 이것은 내게 푸른 세포의 범위를 줄 것이다. 그런 다음 헤더에 지정된 텍스트가 들어있는 모든 열을 강조하는 파란색 셀 범위를 반복 할 수 있습니다. 저는 VBA를 처음 접했을 뿐이며 구문을 잘 모르겠습니다. 또한 지정된 색상 만 포함하는 셀을 반복하는 방법에 대한 정보를 찾는 데 어려움이있었습니다. 이것이 어떻게 수행 될 수 있는지 누구나 알고 계십니까?

건배!

답변

0
Public Sub HighlightColumns(ByVal w As Worksheet) 
    Dim c As Range 
    Dim found As Range 

    For Each c In Application.Intersect(w.Rows(8), w.UsedRange).Cells 
    If c.Interior.Color = vbBlue Then 
     Select Case c.Value 
     Case "product", "UOM", "Pack size", "New Unit Price" 
     If found Is Nothing Then Set found = c Else Set found = Application.Union(found, c) 
     End Select 
    End If 
    Next 

    If Not found Is Nothing Then found.EntireColumn.Select 
End Sub 
관련 문제