Excel 워크시트에서 다른 모든 행을 삭제하는 방법

요약

이 문서에는 Microsoft Excel 워크시트에서 선택한 범위의 다른 모든 행을 삭제하는 데 사용할 수 있는 샘플 Microsoft Visual Basic for Applications 매크로가 포함되어 있습니다.

추가 정보

Microsoft에서 제공하는 프로그래밍 예제는 예시를 위한 것일 뿐이며 이와 관련하여 명시적이거나 묵시적인 어떠한 보증도 하지 않습니다. 이는 상품성이나 특정 목적에 대한 적합성의 묵시적인 보증을 포함하며 이에 제한되지 않습니다. 이 문서에서는 예제에 사용되고 있는 프로그래밍 언어와 프로시저를 만들고 디버깅하는 데 사용되는 도구를 사용자가 잘 알고 있는 것으로 가정합니다. Microsoft 지원 엔지니어는 사용자에게 도움이 되도록 특정 프로시저에 대한 기능을 설명할 수 있지만 사용자의 특정 요구 사항에 맞도록 예제를 수정하여 추가 기능을 제공하거나 프로시저를 구성하지는 않습니다. 다음 매크로를 사용하려면 다음과 같이 Excel 통합 문서를 설정합니다.

  1. 새 Microsoft Excel 통합 문서를 만듭니다.

  2. 새 워크시트의 A1:A9 범위에 다음 예제와 같이 행을 건너뛰고 숫자 1~5를 입력합니다.

    A1: 1
    A2:
    A3: 2
    A4:
    A5: 3
    A6:
    A7: 4
    A8:
    A9: 5
    
  3. [도구] 메뉴에서 [매크로]를 가리킨 다음 [Visual Basic Editor]를 클릭합니다.

    참고 Microsoft Office Excel 2007 이상 버전에서 개발자 탭의 코드 그룹에서 Visual Basic을 클릭합니다.

  4. [삽입] 메뉴에서 [모듈]을 클릭합니다.

  5. 새 모듈에서 다음 매크로를 입력합니다.

Sub Delete_Every_Other_Row()

' Dimension variables.
   Y = False              ' Change this to True if you want to
                          ' delete rows 1, 3, 5, and so on.
   I = 1
   Set xRng = Selection

' Loop once for every row in the selection.
   For xCounter = 1 To xRng.Rows.Count

' If Y is True, then...
       If Y = True Then

' ...delete an entire row of cells.
           xRng.Cells(I).EntireRow.Delete

' Otherwise...
       Else

' ...increment I by one so we can cycle through range.
           I = I + 1

End If

' If Y is True, make it False; if Y is False, make it True.
       Y = Not Y

Next xCounter

End Sub
  1. 데이터가 포함된 워크시트로 전환한 다음 범위 A1:A9를 선택합니다.

  2. 매크로를 실행하려면 도구 메뉴에서 매크로를 가리킨 다음 매크로를 클릭합니다.

    참고

    • Excel 2007 이상 버전에서 개발자 탭의 코드 그룹에서 매크로를 클릭합니다.
    • 리본 메뉴에 개발자 탭을 표시하려면 Microsoft Office 단추를 클릭하고 Excel 옵션을 클릭하고 인기 있는 범주를 클릭한 다음 리본 검사 상자에서 개발자 표시 탭을 선택한 다음 확인을 클릭합니다.
  3. Delete_Every_Other_Row 매크로를 선택한 다음 실행을 클릭합니다.

이 매크로는 선택 영역의 두 번째 행부터 다른 모든 행을 삭제합니다.

참고

여러 열이 포함된 데이터 목록이 있는 경우 데이터의 첫 번째 열만 선택한 다음 매크로를 실행합니다.