본문 바로가기
업무 자동화

엑셀 VBA: 선택한 데이터로 차트(그래프) 자동 만들기 (보고서 시각화 매크로)

by jungdabnote 2026. 1. 29.
반응형

상사에게 보고서를 올릴 때,
숫자만 빽빽하게 적힌 표를 들고 가면
대부분 이런 반응이 돌아옵니다.

“그래서 결론이 뭐야?”
“한눈에 보이게 좀 정리해서 와.”

 

말은 쉽죠.
하지만 매번
[삽입] → [차트] → [데이터 선택] → [서식 조정]…
이 과정을 반복하다 보면,
보고서 하나에 쓸데없이 시간이 많이 들어갑니다.

 

그래서 이번에는
드래그 한 번 + 버튼 한 번으로
선택한 데이터를 바로 차트로 만들어 주는 VBA 매크로
를 정리해봤습니다.

이 매크로 하나만 있으면
보고서 퀄리티가 정말 빠르게 올라갑니다.


왜 차트 자동화가 필요할까

실무에서 차트는 “있으면 좋은 것”이 아니라
사실상 필수에 가깝습니다.

  • 숫자만 있는 표는
    → 이해하는 데 시간이 걸리고
  • 차트 하나만 있어도
    → 흐름이 바로 보입니다

차트 자동화의 장점은 이런 겁니다.

  • 표준화
    → 팀원마다 제각각인 차트 스타일 통일
  • 속도
    → 지점별, 월별 차트 여러 개도 빠르게 생성
  • 보고력
    → 숫자를 ‘이야기’로 바꿔줍니다

이 매크로는 이렇게 동작합니다

동작 방식은 아주 단순합니다.

  1. 차트로 만들 데이터 범위를 드래그
  2. 매크로 실행
  3. 선택한 표를 기준으로
     바로 오른쪽에 세로 막대형 차트 자동 생성

차트 위치, 크기, 기본 스타일도
보고서에서 가장 무난하게 쓰는 설정으로 맞춰 두었습니다.


VBA 매크로 사용 방법

  1. 엑셀에서 Alt + F11 → VBA 편집기 실행
  2. 상단 메뉴 [삽입] → [모듈] 클릭
  3. 아래 코드 그대로 복사해서 붙여넣기
  4. 엑셀로 돌아와
    👉 차트로 만들 범위를 먼저 드래그
  5. Alt + F8 → CreateChartInstantly 실행

차트 자동 생성 VBA 전체 코드

 
Sub CreateChartInstantly()

    Dim DataRng As Range
    Dim MyChart As ChartObject

    ' 선택한 범위 확인
    On Error Resume Next
    Set DataRng = Selection
    On Error GoTo 0

    If DataRng Is Nothing Or DataRng.Cells.Count < 2 Then
        MsgBox "차트로 만들 데이터 범위를 먼저 선택해주세요.", vbExclamation
        Exit Sub
    End If

    ' 차트 생성 (표 오른쪽)
    Set MyChart = ActiveSheet.ChartObjects.Add( _
        Left:=DataRng.Left + DataRng.Width + 10, _
        Top:=DataRng.Top, _
        Width:=400, _
        Height:=300)

    ' 차트 설정
    With MyChart.Chart
        .SetSourceData Source:=DataRng
        .ChartType = xlColumnClustered   ' 세로 막대형
        .HasTitle = True
        .ChartTitle.Text = "데이터 분석 차트"
        .ChartStyle = 201
    End With

    MsgBox "차트가 생성되었습니다.", vbInformation, "완료"

End Sub

 

 


실무에서 써보면 이런 점이 좋습니다

  • 숫자 표 → 차트 전환이 빨라서
    👉 보고 준비 시간이 확 줄어듭니다
  • 스타일이 항상 같아서
    👉 보고서 전체가 깔끔해 보입니다
  • “이 부분은 차트로 보여주세요”라는 말이 나와도
    👉 바로 대응 가능합니다

특히 상사 보고용 파일 만들 때
체감 효과가 큽니다.


마무리

보고서는
얼마나 많이 계산했느냐보다
얼마나 잘 전달했느냐가 더 중요합니다.

 

오늘 정리한
차트 자동 생성 매크로
숫자를 ‘보여주는 자료’로 바꾸는 데 딱 좋은 도구입니다.

앞에서 소개한
데이터 정리, 빈 행 삭제, 파일 합치기 매크로와
같이 쓰면
보고서 만드는 흐름이 훨씬 매끄러워질 겁니다. 감사합니다!

반응형