본문 바로가기
엑셀공부

엑셀 필터 적용 시 마지막 행이 인쇄가 않 될때 마지막 행을 항상 포함하여 인쇄하는 방법(feat. subtotal)

by 곰탱이생각 2025. 3. 14.
반응형

엑셀을 사용할 때 특정 값을 필터링한 후 인쇄하려고 할때 혹시 마지막 행이 자동으로 포함되지 않는 문제가  발생하셧나요?. 원래 적용되어 있던 기능이 수정 과정에서 풀렸다면, 다시 설정하는 방법을 알아야 합니다.

 

이번 포스팅에서는 SUBTOTAL 함수, 테이블 기능, VBA 코드, 인쇄 영역 설정 등을 활용하여 필터링된 데이터의 마지막 행을 자동으로 포함하여 인쇄하는 방법을 소개합니다. 😊

반응형

[목차]


✅ 엑셀 필터 적용 후 마지막 행이 빠지는 문제

필터를 적용한 후 인쇄할 때 마지막 행이 누락됨
행을 추가하거나 수정한 후 원래 설정이 풀림
필터링한 데이터만 인쇄하고 싶은데 보이지 않는 행이 포함되거나 제외됨

이런 문제를 해결하려면, 자동으로 마지막 행이 포함되도록 설정하는 방법을 사용해야 합니다!


✅ 1. SUBTOTAL 함수 활용하여 마지막 행 자동 포함

SUBTOTAL 함수는 필터가 적용된 데이터에서 보이는 값만 계산하는 함수입니다. 이를 활용하면 필터링된 데이터의 마지막 행을 자동으로 포함할 수 있습니다.

📌 예제 데이터 (A~B열)

이름(A열) 매출금액(B열)
홍길동 50000
이영희 75000
김철수 60000
박민수 82000
오정호 72000
합계 =SUBTOTAL(9, B2:B6)

일반 인쇄시

=SUBTOTAL(9, B2:B6)

필터 적용후 subtotal 적용시 인쇄 화면

 

📌 결과 → 필터링된 행들만 합산하여 합계를 계산하고, 인쇄 시 자동으로 포함됨
📌 SUBTOTAL(9, 범위)에서 9는 **SUM(합계)**를 의미하며, 필터가 적용된 값만 계산됩니다.

필터를 적용해도 자동으로 마지막 행이 유지되므로 인쇄할 때도 포함됩니다.


✅ 2. 엑셀 테이블 기능 활용 (필터 자동 적용 & 마지막 행 유지)

테이블 기능을 활용하면 필터 적용 시 마지막 행이 자동으로 포함됩니다.

🔹 설정 방법:

  1. 데이터를 선택한 후 Ctrl + T를 눌러 테이블로 변환합니다.
  2. 필터를 적용하면 마지막 행이 자동으로 포함되도록 설정됨
  3. 인쇄할 때 자동으로 마지막 행이 포함됨

테이블 기능을 사용하면 필터를 적용해도 마지막 행이 유지되므로, 추가 설정 없이 인쇄 가능!


✅ 3. VBA 코드로 필터링된 마지막 행 자동 인식 후 인쇄

만약 원래 기능이 VBA 코드로 자동화되어 있었다면, 다음 코드를 실행하면 다시 설정할 수 있습니다.

Sub PrintFilteredData()
    Dim ws As Worksheet
    Dim rng As Range
    Dim lastRow As Long
    
    Set ws = ActiveSheet
    
    ' 필터링된 데이터의 마지막 행 찾기
    On Error Resume Next
    lastRow = ws.Cells(Rows.Count, 1).End(xlUp).Row
    Set rng = ws.Range("A1:B" & lastRow).SpecialCells(xlCellTypeVisible)
    On Error GoTo 0
    
    ' 필터링된 데이터만 인쇄
    If Not rng Is Nothing Then
        rng.PrintOut
    Else
        MsgBox "필터링된 데이터가 없습니다!", vbExclamation
    End If
End Sub

📌 이 코드가 하는 일:
필터링된 데이터의 마지막 행을 찾아서 인쇄 범위로 설정
숨겨진 행을 제외하고 보이는 행만 포함하여 인쇄

자동화가 필요할 경우 VBA 코드 활용!

🔹 VBA 실행 방법

1.**엑셀에서 ALT + F11**을 눌러 VBA 편집기를 엽니다.

2.삽입모듈을 클릭합니다.

 

3.위의 VBA 코드를 복사하여 붙여넣습니다.

4.F5 키를 눌러 코드를 실행합니다.

5.필터링된 데이터만 자동으로 인쇄됩니다.

 

 

VBA 코드를 실행하면 필터링된 마지막 행까지 포함하여 인쇄할 수 있습니다.


✅ 4. 인쇄 영역 다시 설정하여 필터링된 데이터만 인쇄

필터를 적용한 후 인쇄할 영역이 올바르게 설정되지 않았다면, 직접 범위를 다시 지정할 수도 있습니다.

🔹 방법:

  1. 필터를 적용한 후 보이는 데이터만 선택
  2. 페이지 레이아웃 → 인쇄 영역 설정
  3. Ctrl + P를 눌러 미리보기에서 마지막 행이 포함되었는지 확인 후 인쇄

필터링된 데이터만 인쇄되도록 인쇄 영역을 재설정하면 문제 해결 가능!


🔥 언제 어떤 방법을 써야 할까?

SUBTOTAL을 활용한 동적 행 추가숫자 합계, 카운트 등의 값이 필요할 때 추천
테이블 기능 활용데이터 범위가 자주 변경된다면 추천
VBA 코드 적용자동화된 인쇄를 원한다면 추천
인쇄 영역 수동 설정빠르게 해결하고 싶다면 추천


✅ 마무리

엑셀에서 필터를 적용할 때 마지막 행이 인쇄에서 빠지는 문제는 다양한 방법으로 해결할 수 있습니다.

SUBTOTAL, 테이블 기능, VBA 코드, 인쇄 영역 설정 등을 활용하면 필터링된 데이터만 정확하게 인쇄할 수 있습니다.

 

💡 이제 엑셀에서 필터 적용 후 인쇄할 때, 마지막 행이 자동으로 포함되도록 설정해 보세요! 😊🚀

728x90
반응형
LIST

댓글