엑셀 VBA 특정 단어 포함 된 내용 찾아서 값 지우기

2020. 4. 9. 10:49VBA

728x90
반응형

 

위와 같은 표의 경우에 아래의 조건을 만족할 때만 돌아가도록 해야 한다.

For문을 1단계씩 늘리면 조건비교할 때 숫자 부분도 지워버릴 수 있기 때문.

  조건1 : 특정 단계를 포함하는 단계의 값을 지운다.

  조건2 : 모두 2칸씩 정해져있기 때문에 J + 1칸도 지워야 한다.

 

Sub test()

'========================================================
 With Application
    .ScreenUpdating = False              '매크로 동작, 화면에 안 나타남
    .DisplayAlerts = False               '클립보드 경고 메시지 안 나타남
    .Calculation = xlCalculationManual   ' 자동 계산 방지
 End With
'=========================================================

  Dim m As Workbook
  Dim ms As Worksheet

  Set m = Workbooks(ActiveWorkbook.Name)
  Set ms = m.Sheets(ActiveSheet.Name)

  Dim rng As Range
  Dim rn As Range

  Dim LAST_ROW As Integer

  LAST_ROW = 701

  For i = 13 To ms.Cells(8, Columns.Count).End(1).Column
  
    For j = 12 To LAST_ROW Step 2
        
        If Not ms.Cells(j, i) Like "공정" And Not ms.Cells(j, i) Like "설비*" Then
            ms.Cells(j, i) = ""
            ms.Cells(j + 1, i) = ""
        End If

    Next j
    
  Next i
  
'======================================================
 With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = xlCalculationAutomatic
 End With
'======================================================
End Sub

 

728x90
반응형