안녕하세요!
질문이 심플해서 답변합니다. 확 이해가 가서요...ㅋㅋ
Option Explicit
' 변수설정을 안하면 에러를 줍니다... 이걸 습관화해야 합니다.
Sub Del_()
Dim y As Integer
Dim Del_rng As Range ' 시트 안에 그 칸을 렌지라고 합니다..엑셀은 이걸 아주 자주 이용합니다
y = 8 ' 날짜 시작행이 8행이네요
With Sheets("질문")
Do While .Cells(y, "B") <> "" '빈셀이면 종료합니다.
If Sheets("질문내용").Range("c5") = .Cells(y, "b") Then ' b 열 날짜가 같으면
If Del_rng Is Nothing Then ' 이건 첨에 담을 땐 이렇게 담아야 합니다. 처음에는 비어 있으니까,
' 비어 있으면 실행하라는 얘기입니다.
Set Del_rng = .Rows(y) ' 처음에 찾은 값은 del_rng가 비어 있었겠지요?
Else
Set Del_rng = Union(Del_rng, .Rows(y)) ' 두번째부터는 유니언을 이용해 렌지를 합쳐줍니다.
End If
End If
y = y + 1
Loop
End With
Del_rng.Delete '합쳐진 렌지를 한꺼번에 삭제합니다.
' 이걸 뺑뺑이 돌려 아래서부터 하나씩 삭제하면 됩니다. 위에서부터 삭제하면 행이 변하겠지요?
'물론 그래도 답은 같지만....좋은 방법은 아닙니다.
Set Del_rng = Nothing ' 담은 렌지를 해제시킵니다.
End Sub '
AI 분석 및 채팅