2016-07-26 2 views
0

나는 day for a solution을 (를) 검색했습니다. 매일하는 일정이 있습니다. 일정은 내가 얼마나 바쁘냐에 따라 행 수가 달라 지지만 열은 일정합니다.동적으로 다른 셀의 내용을 기반으로 셀을 지우려고 시도합니다.

대부분의 경우 단순히 매크로를 기록하여 필요한 것을 할 수 있습니다.

문제는 동일한 행의 다른 셀에서 조건이 충족 될 때 셀의 내용을 지워야한다는 것입니다. 특히 H 열의 주어진 행에 문자 L이있는 경우 동일한 열의 B 열에서 셀의 내용을 지울 필요가 있습니다.

답변과 비슷한 질문을 찾았지만 모두 정적 셀의 내용에 영향을 미쳤습니다.

나는 몇 가지 변화를 시도 다음

Sub mdlabkill() 

Dim LastRow As Long 

Dim x As Long 

LastRow = Cells(Rows.Count, 5).End(xlUp).Row 

For x = 1 To LastRow 

    If Cells(x, 5).Value = L Then Range(Cells(x, 2)).ClearContent 

    Next x 


End Sub 
+0

당신이 당신의 데이터의 일부를 게시 할 수와 사진을 당신의 워크 시트? –

+4

모듈 상단에'Option Explicit'을 추가하면 VBA가 정의되지 않은'L' 변수에 대해 불평하는 것을 지켜보십시오. 문자열 리터럴과 비교할 뜻이라면'L'을 따옴표로 둘러 쌉니다.''L ''은 문자열 리터럴이고,'L'은 아무 곳이나 선언하지 않은 변수입니다. –

답변

0

내가 제대로 질문을 이해한다면, 당신은이 코드를 시도 할 수 있습니다 :의

Sub mdlabkill() 
Dim LastRow As Long, x As Long 
LastRow = Cells(Rows.Count, "B").End(xlUp).Row 

For x = 1 To LastRow     'x = 1 indicates your first data is located in row 1 
    If Cells(x, "H").Value = "L" Then 'Or Cells(x, 7) = "L" 
     Cells(x, "B").ClearContents  'Or .Clear to delete all the formats in the cell 
    End If 
Next x 

End Sub 
+0

나는 그 코드가 완벽하게 작동했기 때문에 내가 무엇을 요구하고 있는지 이해했다고 생각한다. 고맙습니다 –

관련 문제