0
매크로가 있지만, 지우고 자하는 행을 지우고 있습니다. 행의 번호 (행 번호)에 따라 계속 유지해야합니다. 다른 시트,하지만 내가 시도한 모든 것은 마지막 경기를 이동하거나 유지하고 싶은 모든 행을 삭제합니다. What happens매크로가 내가 원하는 것을 지우고 있습니다.
Sub KeepRows()
Dim x As Range, u As Range
Dim y As String
With Sheets("Sheetwithnumberrow")
Set x = .Range(.Cells(2, "H"), .Cells(Rows.Count, "H").End(xlUp))
End With
For Each u In x
If u.Text = "keep row" Then
Sheets("SheetthatIwannaClean").Select
y = u.Offset(0, -1)
Rows(y).ClearContents
End If
Next
End Sub
편집 : 나는 무슨 일이 일어나고 있는지의 이미지를 넣어, 나는 버스가 마지막 행을 이동하는 대신 내용을 청소의 다른 시트로 이동했습니다. 명령이, 유지하는 것입니다 유지해야하고, 다음 줄에 가면
Product ROW Instruction ROW Instruction
1 6 keep row 6 keep row
2 15 keep row 15 keep row
3 18 Try Next 17 keep row
4 24 keep row 24 keep row
5 28 keep row 28 keep row
thig 같은 논리 키우면, 그것은, 행에 배치됩니다. 하지만 문제는 코드가 행을 삭제한다는 것입니다.
오타처럼 보입니다. 'For Each c In x' 대신'For Each u In x'를 시도하십시오. 당신이 하위에'Option Explicit'을 포함한다면 당신은 그러한 오류를 스스로 잡을 가능성이 더 큽니다. 또한 Sheets ("SheetthatIwannaClean")를 변경하고 Sheets ("SheetthatIwannaClean")을 선택하고 Activate (이 줄을 모두 지울 수는 있지만). – Ralph
아, 죄송합니다. 여기에 실수를 작성했습니다. 코드 U에 – Yoshio
행을 유지하려면 조건을 변경하십시오. 'If u.Text <>'행을 "Then"으로 유지 하시겠습니까? – trincot