목차
Chapter 1 매크로란 무엇인가?
   1. 매크로가 하는 일을 알아본다 ... 15
   2. 매크로! 이렇게 하면 쉽게 마스터 한다 ... 16
   3. 매크로의 탄생 배경을 알아보자 ... 17
   4. 매크로의 편집 창을 알아보자 ... 19
      비주얼베이직 에디터의 창을 열어보자 ... 19
      [파일] ... 20
      [편집] ... 20
      [보기] ... 20
      [삽입] ... 20
      [형식] ... 20
      [디버그] ... 20
      [실행] ... 20
      [도구] ... 21
Chapter 2 매크로 작성을 쉽게 하는 방법
   1. 매크로 기록기의 생김새를 알아보자 ... 23
      매크로 기록기를 실행시켜 보자 ... 24
      매크로 이름(M) ... 24
      바로 가기 키(K) ... 24
      매크로 저장 위치(I) ... 25
      설명(D) ... 25
      [확인]과 [취소] ... 25
   2. 워크시트에서 이루어지는 일을 매크로는 알고 있다? ... 26
      셀을 선택하는 매크로 ... 26
      매크로는 프로시저에 기록된다 ... 28
      프로시저는 2가지 방법으로 만들 수 있다 ... 29
      Range("A5").Select의 의미는? ... 30
      합계 매크로 ... 31
      자동 필터 매크로 ... 33
Chapter 3 매크로 구성 요소를 알아보자
   1. 개체, 속성, 메서드, 이벤트 ... 37
      클래스(Class)에 대해서 ... 39
      개체(Object)에 대해서 ... 39
      이벤트(Events)에 대해서 ... 39
   2. 모듈과 프로서저에 대해서 ... 45
      모듈이란 무엇인가? ... 45
      모듈의 생성과 삭제 ... 45
      코드는 프로시저에 작성된다 ... 46
      프로시저의 선언 방법 ... 46
      프로시저의 구성 요소 ... 48
      범위의 키워드(선택 요소) ... 49
      프로시저의 성격을 정하는 키워드(필수 요소) ... 49
      프로시저의 인수에 대해서 ... 50
      프로시저 선언 비교 요약 ... 54
   3. 변수(Variable)와 상수(Constant)에 대해서 ... 55
      변수란 무엇인가? ... 55
      변수는 이름을 정해야 사용할 수 있다 ... 55
      변수 선언 방법 ... 56
      Static 변수 ... 57
      선언된 변수는 키워드에 따라 인식 범위가 다르다 ... 57
      인식 범위 ... 58
      변수의 인식 범위는 왜 필요한가? ... 59
      변수의 데이터 형식 ... 59
      변수 이름, 인식 범위, 데이터 형식 요약 ... 60
      Byte 형식 예제 ... 61
      Boolean 형식 예제 ... 62
      Integer 예제 ... 63
      변수의 수명 ... 64
      상수란 무엇인가 ... 66
      시스템 정의 상수 종류 ... 66
   4. 요약과 활용 ... 70
      프로젝트의 구성 요소 ... 70
      개체(Object)의 구조 ... 70
      이벤트 활용 ... 70
      프로젝트, 모듈, 프로시저, 변수의 관계 ... 70
      Sub 프로시저에서 Function 프로시저 호출 ... 70
Chapter 4 매크로 기본 규칙만 알면 80% 성공
   1. 지정문과 Set 문 ... 73
      지정문 ... 73
      Set 문 ... 74
   2. 조건문은 이렇게 사용한다 ... 76
      If ~ Then ~ Else ~ End If 문 ... 77
      조건문 ... 77
      조건문 예제 ... 79
      If ~ Then ~ ElseIf ~ ElseIf ~ Else ~ End If 문 ... 80
      조건문 : If 문 중첩 ... 82
      Select Case 문 ... 84
   3. 순환문은 이렇게 사용한다 ... 87
      순환문은 왜 필요한가? ... 87
      For ~ To ~ Next 문 ... 87
      중첩 순환문 ... 90
      For Each ~ In ~ Next 문 ... 91
      워크시트는 모두 몇 개일까? ... 91
      셀에 색상 칠하기 ... 92
      Do While 조건식 Loop 문 ... 93
      Do Until 조건식 Loop 문 ... 95
      While ~ Wend 문 ... 96
   4. 연산자를 사용하는 방법 ... 97
   5. 요약과 활용 ... 99
      변수에 값 지정, 개체 참조 ... 99
      변수의 데이터 형식이 Variant ... 99
      셀에 값과 수식 입력 ... 100
      With 문 ... 100
      중첩 순환문 ... 100
      순환문 연습 ... 101
Chapter 5 통합 문서, 워크시트 제어
   1. 엑셀의 개체 모델 ... 103
   2. Application 개체 ... 104
      ScreenUpdating 속성 ... 104
      StatusBar 속성 ... 106
      Calculation 속성 ... 108
      Caller 속성 ... 109
      Cursor 속성 ... 110
      DefaultFilePath 속성 ... 110
      DisplayAlerts 속성 ... 111
      EnableCancelKey 속성 ... 111
      MoveAfterReturn 속성 ... 112
      Names 속성 ... 112
      OnWindow 속성 ... 113
      Path 속성 ... 113
      SheetsInNewWorkbook 속성 ... 113
      StartupPath 속성 ... 114
   3. Workbook 다루기 ... 114
      통합 문서 열기 ... 114
      통합 문서의 저장과 닫기 ... 117
      통합 문서 저장 닫기 예문 ... 119
      통합 문서와 워크시트의 선택과 활성화 ... 120
      보호와 해제 ... 120
      통합 문서의 복사, 이동, 삭제 ... 121
      통합 문서의 연결 유형 ... 122
      다른 통합 문서를 참조하는 수식, 이름, 개체를 삭제 ... 123
      연결된 수식의 제거 예제 ... 124
      파일과 폴더의 삭제 ... 124
   4. Worksheet 다루기 ... 125
      위크시트 생성과 삭제 ... 125
      워크시트의 선택 ... 127
Chapter 6 셀을 제어하는 방법
   1. Range 개체 이해하기 ... 129
      Range 개체란 무엇인가? ... 129
      워크시트에 셀은 모두 몇 개 있을까? ... 130
   2. 셀을 선택하는 방법 ... 130
      셀 주소 표기법 ... 130
      셀을 선택하는 방법 ... 131
      Select와 Activate의 차이점 ... 132
   3. 셀에 값 입력과 삭제 ... 133
      셀에 값 입력 ... 133
      셀의 값 삭제 ... 134
      메모 삽입과 삭제 ... 135
      모든 개체 삭제 ... 135
   4. 셀 주소 알아보기 ... 136
      Address 속성 ... 136
      셀 범위의 상대 주소 ... 136
      상대 주소의 예제 ... 137
      선택 영역의 상하좌우 마지막 셀의 주소 ... 139
      다수 영역의 셀 주소 ... 140
      다수 선택 영역의 영역별 주소 알아내기 ... 141
      두 개의 선택 영역에서 교차하는 영역을 구하기 ... 141
      두 영역의 합집합을 구한다 ... 142
   5. 행과 열을 다루는 방법 ... 143
      홀수 행에 행 삽입 ... 143
      짝수 행에 행을 삽입 ... 144
      항목의 값이 다르면 행을 삽입 ... 144
      행과 열의 삭제 ... 145
      셀이 공란이면 행을 삭제 ... 145
      행 전체에 데이터가 없다면 행을 삭제 ... 146
   6. 셀 범위 동적 참조 방법 ... 147
      End 속성에 대해서 ... 147
      End 속성의 정리 ... 148
      UsedRange, CurrentRegion에 대해서 ... 148
      셀 범위 재설정(Resize) ... 149
   7. 동적으로 특정 셀 참조하는 방법 ... 151
      Offset 속성 ... 151
      값이 없는 특정 셀 찾기 ... 152
      Count와 CountA의 차이점 ... 155
   8. 복사와 붙여넣기 ... 156
      복사, 붙여넣기 ... 156
   9. 활용 예제 ... 157
      검색한 데이터 복사/붙여넣기 ... 157
      자동 필터와 데이터의 복사/붙여넣기 ... 159
      규칙적인 테두리 만들기 ... 163
      실제의 마지막 셀 참조 ... 165
      셀 선택 제한 이벤트 ... 166
      다수 셀 범위 데이터를 정렬하여 입력하기 ... 167
Chapter 7 사용자 함수에 대해서
   1. 사용자 함수의 원리 ... 169
   2. 사용자 함수의 활용 ... 170
      출장비 계산 함수 ... 170
      성과급 계산 함수 ... 171
      보이는 행만 합산하는 함수 ... 173
      문자열 계산 함수 ... 173
Chapter 8 자동 필터와 고급 필터 매크로 활용
   1. 자동 필터 매크로에 대해서 ... 175
      사용자 지정 자동 필터 ... 175
      자동 필터와 복사 & 붙여넣기 ... 177
   2. 고급 필터 매크로에 대해서 ... 179
      고급 필터의 기본 ... 179
      고급 필터(두 날짜 사이의 자료 필터) ... 180
      고급 필터 예제 모음 ... 183
Chapter 9 피벗 테이블과 차트 매크로
   1. 피벗 테이블 매크로 ... 185
      피벗 테이블 만들기(엑셀) ... 185
      피벗 테이블 만들기(데이터베이스) ... 187
      피벗 차트 만들기 ... 188
   2. 차트 응용과 매크로 ... 190
      간트 차트 ... 190
      동적 차트 - 1 ... 194
      동적 차트 - 2 ... 196
Chapter 10 배열은 속도를 향상시킨다
   1. 배열과 배열 수식 ... 197
      배열이란? ... 197
      워크시트에서 배열 입력 ... 198
      배열의 연산 ... 198
      배열 수식과 배열 상수 ... 199
      배열 수식의 연습 ... 200
   2. 매크로의 배열 ... 203
      매크로에서 배열이 필요한 이유 ... 203
      〈불합리한 구상〉 ... 203
      〈바람직한 구상〉 ... 203
      배열 변수의 선언 ... 204
      다차원 배열 변수 ... 205
      배열 선언의 규칙 ... 206
      배열과 Variant ... 207
      배열을 다른 배열에 대입 ... 208
      함수에서 배열 반환 ... 209
      문자열을 배열로 반환하는 사용자 정의 함수 ... 210
      배열에 값이 존재하는지 검사하는 사용자 정의 함수 ... 211
      데이터 행렬 위치 변경 ... 211
      동적 배열 선언 ... 212
      2차원 동적 배열 ... 213
      2차원 배열 ... 216
      행의 데이터를 열의 방향으로 이동하는 매크로 ... 217
      열의 데이터를 행의 방향으로 이동하는 매크로 ... 218
      배열의 정렬 ... 219
      문자의 오름차순 정렬 ... 221
      셀 범위의 배열 ... 223
   3. Collection 개체 ... 224
      1행의 데이터를 A열로 이동 ... 224
      고유값만 추출 ... 225
      고유값 추출하고 정렬 ... 226
   4. 요약과 활용 ... 228
      배열 수식 응용(1) ... 229
      배열 수식 응용(2) ... 230
      고유값의 수 카운트 ... 231
Chapter 11 매크로에서 파일과 폴더의 제어도 가능한가?
   1. FileSearch 개체 ... 233
      폴더의 파일을 검색 ... 233
      파일을 검색하고 오름차순 정렬 ... 234
      검색 후 순수 파일명 구하기 ... 235
   2. FileSystemObject 개체 ... 237
      파일의 복사 ... 237
      FileCopy 문 ... 237
      파일의 삭제 ... 238
      폴더의 복사, 생성, 삭제 ... 238
      드라이브 종류 알아보기(Drive 개체) ... 239
      폴더의 모든 파일 이름 검색(FileSystemObject) ... 240
      파일의 정보 알아내기(만든 날, 접속일, 수정일, 파일의 크기) ... 241
      폴더와 파일의 존재를 검사하는 함수 ... 242
      텍스트 파일에 문자 추가 ... 242
   3. 요약과 활용 ... 244
      폴더명과 파일명 검색하기 ... 244
      텍스트 문서 제어 ... 246
      텍스트 문서 가져오기 ... 249
      통합 문서 취합 ... 251
      파일 검색 클래스(고급 수준) ... 255
Chapter 12 사용자 정의 폼 알고 보면 쉽다
   1. 양식의 컨트롤 ... 257
      양식의 체크 상자 ... 261
      양식의 옵션 단추 ... 262
      양식의 콤보 상자 ... 264
      양식의 스크롤 막대 ... 265
   2. 사용자 정의 폼 ... 266
      폼의 삽입(생성) ... 266
      사용자 정의 폼 속성 ... 267
      사용자 정의 폼 맛보기 ... 268
   3. 컨트롤 속성과 사용법(UserForm) ... 272
      텍스트 상자 ... 272
      주소록 만들기 ... 274
      콤보 상자(ComboBox) ... 277
      리스트 상자(ListBox) ... 282
      컨트롤의 연동 ... 287
      옵션 버튼과 체크 박스 ... 289
      체크 박스 ... 291
      토글 버튼(ToggleButton) ... 292
      연속 탭(TabStrip) ... 293
   4. 요약과 활용 ... 295
      리스트 상자의 목록 수정 ... 295
      콤보 상자와 리스트 상자의 연동 ... 298
      콤보 상자로 시트 선택 ... 301
Chapter 13 추가 기능을 마음대로 만들 수 있으면 매크로 고수
   1. 추가 기능 프로그램에 대해서 ... 305
      추가 기능이란? ... 305
      추가 기능 만들기 ... 307
      설치된 추가 기능의 정보 알아내기 ... 307
      추가 기능으로 실행되면 파일이 숨겨진다 ... 307
      추가 기능을 로드 또는 언로드할 때 자동으로 코드 실행 ... 308
      COM 추가 기능 ... 309
   2. VBE 개체 ... 312
      VBE 개체란 ... 312
      VBProject 개체 ... 314
      VBComponent 개체 ... 315
      CodeModule 개체 ... 317
      CodePane 개체 ... 318
      통합 문서에 모듈을 삽입 ... 319
      통합 문서의 특정 모듈 삭제 ... 319
      모듈에 프로시저와 코드를 삽입 ... 320
      코드 삭제 ... 321
      모듈 종류 알아보기 ... 322
      모듈의 프로시저 이름 알아보기 ... 323
      모듈을 비주얼베이직 파일로 내보내기 ... 324
      비주얼베이직 파일 내보내기/가져오기(1) ... 326
      비주얼베이직 파일 내보내기/가져오기(2) ... 326
   3. 커맨드바 ... 328
      커맨드바(CommandBar)란? ... 328
      CommandBar의 종류 ... 328
      CommandBars 컬렉션 개체 ... 329
      커맨드바에 버튼 추가 ... 332
      커맨드바 컨트롤의 종류 알아보기 ... 334
      워크시트 메뉴바에 컨트롤 추가하기 ... 337
      팝업 메뉴의 하부 메뉴에 컨트롤 추가하기 ... 340
      빠른 메뉴바 만들기 ... 341
      셀 메뉴바의 컨트롤 추가/삭제 ... 342
      FaceId ... 343
      워크시트를 사용한 메뉴바 만들기 ... 345
Chapter 14 데이터베이스로 매크로에 날개를 달자
   1. 데이터베이스 이해 ... 351
      데이터베이스의 필요성 ... 351
      통합 문서도 데이터베이스 파일이다 ... 352
      데이터베이스 열기(공유, 읽기 전용) ... 356
      데이터베이스 열기(암호) ... 357
      외부 데이터베이스 열기(엑셀) ... 358
      Table 정보 알아보기(DAO) ... 360
      테이블의 필드이름 출력(DAO) ... 361
      통합 문서 테이블 정보 출력(DAO) ... 362
      테이블 정보 출력(ADO/ADOX) ... 362
      필드 이름 출력(ADOX) ... 364
   2. 데이터 핸들링 ... 365
      데이터 가져오기(DAO/OpenRecordset) ... 365
      데이터 가져오기(ADO/OpenRecordset) ... 367
      테이블 필드 레코드의 생성과 업데이트 ... 369
      엑셀의 테이블은 삭제되지 않는다 ... 374
   3. SQL에 대해서 ... 374
      SQL(Structured Query Language)의 개념 ... 374
      SELECT 문 ... 375
      필드에 특정 문자열이 포함된 자료 ... 376
      질의 실행 프로시저 ... 378
      테이블의 레코드 통합 ... 387
      필드명이 같으면 레코드를 결합 ... 388
      두 테이블에서 중복된 레코드는 제외하고 결합 ... 390
      매개 변수 쿼리(Parameters) ... 392
      크로스탭 쿼리(TransForm, Pivot) ... 393
      테이블 생성과 삭제(Execute, Drop) ... 394
      하위 쿼리 ... 395
   4. 요약과 응용 ... 396
      dBase 파일 다루기 ... 396
      특정 시트의 특정 셀 범위 값을 가져오기 ... 398
      워크시트를 mdb 파일의 테이블로 내보내기 ... 400
Chapter 15 매크로의 고급 활용
   1. 견적서 프로그램 만들기 ... 403
   2. 인쇄와 관련된 매크로 ... 412
      고지서 만들기 ... 412
      우편봉투 라벨 만들기 ... 414
   3. 엑셀 명함관리 ... 418
   4. 우편번호 검색 프로그램 ... 437
   5. 세금계산서 발행 프로그램 ... 441
닫기