Q 열에 특정 단어가 포함되지 않은 행을 삭제하고 합계를 다시 계산하려고합니다. 이제는 이것이 설계중인 코드의 일부이므로 나머지 코드는 정상적으로 작동하므로이 부분 만 게시하고 있습니다.vba - 특정 단어가 포함되지 않은 행을 삭제합니다.
내 데이터는 인용 및 해당 정보 목록이 있으며 해당 지역 (열 Q)에 대한 열을 추가하여 분석 할 영역을 필터링하고 싶습니다. 전체 행에 대해서는 지역에있는 합계 만 반영해야하므로 숫자를 다시 계산해야합니다.
내 데이터 범위가 머리글과 합계 행을 병합 했으므로 상황이 복잡해 지는지 확실하지 않습니다.
Sub test()
Dim Rng As Range
Dim x, lngLastRow As Long
Dim ws As Worksheet
Set ws = Worksheets("A")
lngLastRow = ws.Cells(Rows.Count, "B").End(xlUp).Row
Set Rng = Range("Q5:Q" & lngLastRow - 1)
For x = Rng.Rows.Count To 1 Step -1
If InStr(1, Rng.Cells(x, 17).Value, "NW") = 0 Then
Rng.Cells(x, 1).EntireRow.Delete
End If
Next x
End Sub
이제 현재 코드는 병합 된 헤더를 제외한 모든 데이터를 삭제하므로 각 영역을 필터링하는 데 도움이 필요합니다. 그리고 지금까지 코드가 작동하지 않아 합계 행을 다시 계산하지 않았 음을 알 수 있습니다. 그래서 아직 그 부분을 추가하지 않았습니다.
필자가 시도한 두 번째 방법은 필터 함수를 사용하는 것이며 "Run Time Error 1004 AutoFilter 메서드가 Range 클래스에 실패했습니다."이며 이것이 내가 시도한 코드입니다.
With ws.Range("B5", "Q" & lngLastRow)
.AutoFilter
.AutoFilter Field:=17, Criteria1:="NW"
End with
그래서 어느 방법이 더 효과적인지 또는 다른 접근 방법이 있는지 알 수 없습니다.
여기 내 데이터가 표시됩니다.
덕분에이 내가 찾고 있어요 것입니다. – sc1324