2016-10-14 2 views
-1

나는 아주 간단한 것을하기 위해 코드를 작성하려고 시도했으나 일어날 수없는 것처럼 보입니다. 이것에 대한 도움은 진심으로 감사 할 것입니다. "그 행에 대해"현재 상태 "열에서 셀을 말한다간단한 For 루프/If 문 시나리오

루프 행을 통해 경우 : Screenshot

는 내가 뭘하려고 : -

시나리오 아래 스크린 샷을 참조하십시오 DUE SOON "을 선택하면 STATUS 이후 셀의 데이터가 지워집니다. 이 셀은 데이터가 없으면 노란색으로 바뀝니다. 교대로, "C"가있는 경우, 그들은 회색으로 유지됩니다. 간단히 말해 STATUS 셀에 DUE SOON이 있으면 빈 셀의 서식 지정으로 인해 다음 10 개의 셀이 노란색으로 바뀝니다.

"REMAINING"열 셀을 사용해 보았습니다. 숫자가 15보다 작 으면 똑같은 일이 일어나야합니다. 성공하지 못했습니다. 어느 시나리오가 작동합니다.

셀을 지우는 방법과 for 루프를 사용하여 행을 반복하는 방법을 이해합니다.하지만이 작업은 제한된 프로그래밍 기술이 허용하는 것보다 약간 복잡하므로 다른 사람이 올바른 방향으로 나를 가리킬 수 있습니까?

+0

코드를 게시하여 [좋은 질문을하는 방법] (http://stackoverflow.com/help/how)에 따라 도움을 줄 수 있습니까? -to-ask "방법")? –

답변

0

나는 이것이 당신이 원하는대로한다고 생각합니다.

Sub Deleteif() 


Dim iCntr As Long 
Dim iLastRow As Long 
    iLastRow = Cells(Rows.Count, 1).End(xlUp).Row 
Range("A1").Select 

For iCntr = iLastRow To 1 Step -1 
    If Cells(iCntr, "COLUMN NUMBER FOR THE COLUMN CONTAINING STATUS").Value = "DUE SOON" Then 
     ActiveCell.Select 
     ActiveCell.Offset(0, 1).Select 
     Range(ActiveCell, ActiveCell.Offset(0, 10)).Select 
     Selection.Value = "" 
     Cells(iCntr, 1).Select 
    End If 
    Next 

End Sub 
+0

시간을내어 주셔서 감사합니다. –