2016-09-28 2 views
0

Excel 스프레드 시트 주문 양식의 경우 78 행부터 더 이상 데이터가 없을 때까지 하나의 매크로가있는 모든 행에 조건부 서식을 적용하는 방법이 필요합니다.Excel - VBA로 변환 된 많은 조건부 서식

각 열에는 고유 한 조건부 서식 지정이 있습니다. 일부에는 여러 개의 수식이 있습니다. Record Macro 기능을 사용해 보았습니다. 그러나 그 이후로 계속 진행되고있는 VBA 코드는 지저분하고 모든 것을 결합하는 방법을 잘 모르겠습니다.

나는 모든 코드를 작성해야 할 필요가 없지만 모든 작업을 수행하는 방법을 파악하기 위해 약간의 지침을 얻을 수 있기를 바랍니다.

약 15 개의 열에 조건부 서식이 적용되어야합니다.

A78 :

공식 : 여기에 내가 함께 일하고 있어요 것을 보여주기 위해 몇 열입니다 = AND ($ A $ (78) = "", COUNTA (78:78)> = 1) | 흰색 텍스트, 빨간색 채우기 | 을 중지 진정한

C78 경우 :

형식> M으로 시작 만 포함 세포> 특정 텍스트> | 형식 없음 | 참이면 중지

> 특정 텍스트>> F로 시작하는 셀만 서식을 지정하십시오. 형식 없음 | True이면 중지

> 오류 없음 | 빨간색 배경, 흰색 텍스트

D78 :

셀 값이 당신은 매우 쉽게 DO-WHILE Loop이 작업을 수행 할 수 있습니다 이상 300

+0

누군가가 ** 모든 ** 코드를 작성하는 것을 원하지 않는다고합시다. –

+1

[1 단계 - 매크로 레코더로 시작] (https://support.office.com/en-us/article/Step-1-Start-with-the-macro-recorder-6DC53056-1DE1-4483-AA07- 63E4E0EFE3C2). – Jeeped

+0

이미 말했듯이 이미 레코더를 사용해 보았습니다. 나중에 실행해도 제대로 작동하지 않습니다. 누군가 제가 위에 적어 놓은 것에 대한 코드를 도울 수 있다면, 나는 나머지를 할 수 있다고 생각합니다. – Robby

답변

0

입니다. 나는 "D78"을 시작할 것이고 나머지는 다 끝낼 수 있어야한다.

sub formatCells() 

    Dim count as Integer 
    Range("D78").Activate 

    count = 0 
    Do While ActiveCell.Offset(count, 0).Value <> "" 
     If ActiveCell.Offset(count, 0).Value > 300 Then 
      'Do Stuff 
     End If 
     count = count + 1 
    Loop 
End Sub 
+0

고마워요,하지만 그 방법으로는 적어도 저에게는 효과가 없을 것입니다. 그리고 내가 원했던 것은 VBA에서 전혀 불가능합니다. 나는 당신의 "할 일"을 내가 필요한 것으로 바꿨지 만 셀의 값이 300 이하의 숫자로 변경되면 기본 채우기를 유지하려고합니다. – Robby