← 개념서모바일 버전
스프레드시트·1·2급 공통·18장

매크로와 VBA

매크로 기록과 실행, 매크로 이름·바로 가기 키 규칙, VBA 편집기와 프로시저, 주요 개체와 제어문을 정리합니다.

노란 밑줄n회 기출에 나온 지점(숫자는 등장 문항 수)✎ 는 덧붙인 필기

출제 비중 — 매크로128회 는 2~3문항 고정. 이름 규칙과 기록 시 저장 위치, 프로시저44회 문법이 반복 출제된다.

1. 매크로 기록

  • 매크로: 반복 작업을 기록해 두고 한 번에 실행하는 기능. [개발 도구] 또는 [보기] 탭에서.
  • 기록 대화상자 4가지 항목
항목 규칙
매크로 이름 첫 글자는 반드시 문자. 공백 사용 불가(대신 _). / ? * . 등 특수문자 불가. 대소문자 구분 안 함
바로 가기 키 Ctrl + 영문 소문자. 대문자로 지정하면 Ctrl + Shift + 영문. 숫자·특수문자·한글 불가. 엑셀 기본 단축키보다 매크로가 우선
매크로 저장 위치 개인용 매크로 통합 문서(모든 통합 문서에서 사용) / 새 통합 문서 / 현재 통합 문서
설명 주석. 실행에 영향 없음
  • 기록 중의 모든 동작이 기록된다. 잘못 입력해 지운 것도 기록되므로 순서를 미리 생각해 둘 것.
  • 절대 참조 기록이 기본이다. [상대 참조로 기록] 을 누르면 현재 셀 기준 상대 위치로 기록된다.
  • 매크로가 포함된 파일은 .xlsm(매크로 사용 통합 문서) 으로 저장해야 한다.

2. 매크로 실행과 관리

  • 실행 방법: [매크로] 대화상자 → 실행 · 바로 가기 키 · 도형·단추·그림에 연결 · 빠른 실행 도구 모음 · VBE 에서 F5.
  • 한 단계씩 실행은 F8. 중단점을 걸어 확인할 수 있다.
  • [매크로] 대화상자에서 실행·한 단계씩·편집·삭제는 되지만 이름 변경 메뉴는 없다 (편집 창에서 직접 고친다).
  • 보안: [매크로 보안]에서 모든 매크로 제외(알림 표시) 등을 지정.

3. VBA 편집기(VBE)

  • 열기: Alt + F11. 구성: 프로젝트 탐색기 · 속성 창 · 코드 창 · 직접 실행 창(Ctrl+G).
  • 프로시저44회
종류 특징
Sub 프로시저 값을 반환하지 않는다. 매크로 기록은 모두 Sub. Sub 이름() … End Sub
Function 프로시저 값을 반환한다. 워크시트에서 사용자 정의 함수로 쓸 수 있다
Property 개체의 속성 정의
  • 이벤트 프로시저15회: 특정 사건이 일어날 때 자동 실행. Worksheet_Change, Workbook_Open, Worksheet_SelectionChange 등.
  • 주석은 작은따옴표(') 로 시작, 한 줄이 길면 밑줄(_) 로 이어 쓴다.

4. 주요 개체와 속성

개체 뜻
Application 엑셀 프로그램 전체
Workbooks / ActiveWorkbook 통합 문서
Worksheets / ActiveSheet 워크시트
Range / Cells 셀. Range("A1"), Cells(행, 열)
Selection 현재 선택 영역
  • 표기: 개체.속성 = 값 (예: Range("A1").Value = 100), 개체.메서드 (예: Range("A1").Select).
  • 자주 쓰는 속성/메서드: Value · Formula · Font.Bold · Interior.Color · Select · Copy · ClearContents · Offset · End(xlDown).

5. 제어문

  • 조건문
    • If 조건 Then … ElseIf … Else … End If
    • Select Case 변수 / Case 값 / Case Else / End Select
  • 반복문
    • For i = 1 To 10 Step 2 … Next i
    • For Each 개체 In 컬렉션 … Next
    • Do While 조건 … Loop / Do Until 조건 … Loop
  • 메시지: MsgBox(메시지 표시) / InputBox(값 입력받기).
  • 변수 선언: Dim 변수 As 자료형. 모듈 첫 줄에 Option Explicit 를 쓰면 선언하지 않은 변수를 쓸 때 오류가 난다.

마무리 체크

  • 매크로 이름: 문자로 시작·공백 불가·특수문자 불가
  • 바로 가기 키: Ctrl+영문 소문자, 대문자면 Ctrl+Shift, 기본 단축키보다 우선
  • 개인용 매크로 통합 문서에 저장하면 모든 문서에서 사용
  • 기본은 절대 참조 기록
  • Sub(값 없음) vs Function(값 반환, 사용자 정의 함수)
  • Alt+F11 편집기, F5 실행, F8 한 단계씩