1. Workbook, Worksheet 개체
1) 엑셀 개체의 종류
○ 엑셀 VBA에서 사용 가능 한 개체 : Workbook, Worksheet, Range 등이 대표적
▷ Workbook 개체 : 파일 열기, 파일 닫기, 파일 저장
▷ Range 개체 : 셀 선택하기, 셀 값 속성
▷ Worksheet 개체 : 워크시트 만들기, 워크시트 삭제하기, 워크시트 선택하기, 워크시트 보호하기
2) Workbook 개체의 주요 메서드
메서드 |
기능 |
사용 예 |
Activate |
통합문서 활성화 |
Workbooks(“연습.xlsm”).Activate |
Open |
통합문서 열기 |
Workbooks.Open Filename:=”C:\연습.xlsm” |
▶ 그 외 주요 메서드
메서드 |
기능 |
사용 예 |
Close |
통합 문서 닫기 |
Workbooks(“01_01_before.xlsm”).Close ☞‘01_01_before.xlsm’ 통합 문서를 닫습니다. |
PrintOut |
통합 문서 인쇄 |
Workbooks("01_01_before.xlsm").PrintOut ☞ ‘01_01_before.xlsm’ 파일을 인쇄합니다. |
PrintPreview |
통합 문서 인쇄 미리보기 |
Workbooks("01_01_before.xlsm").PrintPreview ☞ ‘01_01_before.xlsm’ 파일을 인쇄 미리 보기합니다. |
Save |
통합 문서 저장 |
Workbooks("01_01_before.xlsm").Save ☞ ‘01_01_before.xlsm’ 파일을 저장합니다. |
Save As |
통합 문서 다른 이름으로 저장 |
Workbooks("01_01_before.xlsm").SaveAs "C:\01_01_after.xlsm", Password:="1111" ☞ C 드라이브에 파일명‘01_01_after.xlsm’로 암호 ‘1111’을 설정, 저장 경로가 없으면 현재 문서가 저장된 같은 경로에 저장 |
3) Worksheet 개체의 주요 메서드
메서드 | 기능 | 사용 예 |
Add | 워크시트 삽입 |
Worksheets.Add |
Select | 워크시트 선택 |
Worksheets(“Sheet1”).Select |
▶ 그 외 주요 메서드
메서드 | 기능 | 사용 예 |
Add | 새 워크시트 삽입 |
Worksheets.Add ☞ 워크시트의 맨 앞에 새 워크시트를 삽입합니다. |
Worksheets.Add After:=Worksheets(Worksheets.Count)
☞ 워크시트의 맨 뒤에 새 워크시트를 삽입합니다. | ||
Activate | 여러 개의 워크시트 중 지정한 워크시트 활성화 |
Worksheets(1).Activate ☞ 첫 번째 워크시트를 활성화합니다. |
Delete | 워크시트 삭제 | Worksheets(“Sheet1”).Delete
☞ 워크시트를 삭제합니다. |
Protect | 워크시트 보호 | Worksheets(“Sheet1”).Protect Password:=”1111”
☞ 암호 ‘1111’을 설정하여 워크시트를 보호합니다. |
UnProtect | 워크시트 보호 해제 |
Worksheets(“Sheet1”).Unprotect ☞ 워크시트 보호를 해제합니다. |
▶ Worksheet 개체의 주요 속성
속성 | 기능 | 사용 예 |
Name | 워크시트 이름 반환 | Worksheets(1).Name
☞ 첫 번째 워크시트의 이름을 반환합니다. |
Worksheets(1).Name = “1월”
☞ 첫 번째 워크시트의 이름을 ‘1월’로 지정합니다. | ||
Visible | 워크시트 표시 여부 반환 | Worksheets(“Sheet1”).Visible = True
☞ Sheet1 워크시트를 표시합니다. |
Worksheets(“Sheet1”).Visible = False ☞ Sheet1 워크시트를 숨깁니다. |
2. Range 개체
1) Range 개체
○ 워크시트에 포함된 각각의 셀을 다룰 때 사용하는 개체
① 주요 속성
속성 | 기능 | 사용 예 |
Offset | 지정한 행/열 번째 셀 참조 | Range(“A1”).Offset(1,2).Select |
CurrentRegion | 연속된 데이터 범위를 참조 | Range(“A1”).CurrentRegion.Select |
▶ 그 외 주요 속성
속성 | 기능 | 사용 예 |
Address | Range 개체의 셀 주소 반환 | Range(“A1”).Address ☞ [A1]셀의 셀 주소를 반환합니다. ($A$1) |
Cells | 지정한 행, 열 위치의 셀을 반환 | Cells(1, 1).Select
☞ 1행, 1열 즉, [A1]셀을 반환합니다. |
Columns | 열 참조 | Columns(1).Select
☞ 첫 번째 열 즉, A열을 참조합니다. |
Rows |
행 참조 |
Rows.Select
☞ 전체 행을 선택합니다. |
EntireColumn |
셀 범위의 열 전체를 참조 |
ActiveCell.EntireColumn.Select
☞ 활성 셀의 열 전체를 참조합니다. |
EntireRow |
셀 범위의 행 전체를 참조 |
ActiveCell.EntireRow.Select
☞ 활성 셀의 행 전체를 참조합니다. |
ColumnWidth |
열의 너비를 반환 |
ActiveCell.ColumnWidth = 30
☞ 활성 셀의 너비를 30 pt로 지정합니다. |
End End(xlUp), End(xlDown), End(xlToLeft), End(xlToRight) |
지정한 범위에서 특정 방향(상,하,좌,우)으로 연속된 데이터 범위의 끝 셀을 반환 |
Range(“A1”).End(xlDown).Select
☞ [A1]셀에서 아래쪽 방향의 끝 셀을 선택합니다. |
Range(“A1”).End(xlToLeft).Select
☞ [A1]셀에서 오른쪽 방향의 끝 셀을 선택합니다. |
||
Formula |
수식을 반환 받거나 변경 |
Range(“C1”).Formula=”=A1+B1”
☞ [C1]셀에 ‘=A1+B1’ 수식을 지정합니다. |
NumberFormat |
지정한 범위의 숫자 서식을 반환 받거나 변경 |
Range(“A1:A10”).NumberFormat=”#,##0원” ☞ [A1:A10]셀 범위의 숫자 서식을 ‘#,##0원’으로 지정합니다. |
Value |
지정한 셀의 값을 반환받거나 변경합니다. |
Range(“A1”).Value=10
☞ [A1]셀의 값을 “10”으로 지정합니다. |
WrapText |
‘텍스트 줄 바꿈’을 설정합니다. |
Range(“A1”).WrapText=True
☞ [A1]셀의 텍스트 줄 바꿈 옵션을 설정합니다. |
② 주요 메서드
메서드 | 기능 | 사용 예 |
Select | 지정한 셀 선택 | Range(“A1”).Select |
ClearFormat | 셀 서식 지우기 | Range(“A1:D10”).ClearFormats |
▶ 그 외 주요 메서드
메서드 |
기능 |
사용 예 |
Activate |
셀 활성화 |
Range(“A1”).Activate
☞ [A1]셀을 활성화합니다. |
AutoFit |
지정한 범위에 있는 열의 너비 또는 행의 높이를 자동으로 조정 |
Column(“1:5”).AutoFit
☞ [A:E]열의 너비를 자동으로 조정합니다. |
Clear | 셀 범위의 값, 수식, 서식을 모두 지움 |
Range(“A1:D10”).Clear
☞ [A1:D10]셀 범위의 값, 수식, 서식을 모두 지웁니다. |
ClearContents |
셀 범위의 값, 수식을 지움 |
Range(“A1:D10”).ClearContents
☞ [A1:D10]셀 범위의 값, 수식을 지웁니다. |
Copy | 셀 복사 |
Range(“A1”).Copy
☞ [A1]셀을 복사합니다. |
Cut |
셀 잘라내기 |
Range(“A1”).Cut
☞ [A1]셀을 잘라내기합니다. |
Paste |
클립보드의 값붙여넣기 |
Range("A6").Select ActiveSheet.Paste
☞ 복사한 데이터를 활성시트의 [A6]셀에 붙여넣기합니다. |
PasteSpecial |
‘선택하여 붙여넣기’ 기능을 이용하여 클립보드의 값 붙여넣기 |
Selection.PasteSpecial Transpose:=True
☞ 복사한 선택 영역을 행/열을 바꾸어 붙여넣기 합니다. |
Find | 지정한 범위에서 찾을 조건에 만족하는 첫 번째 셀 반환 |
Range("a3").CurrentRegion.Column(1).Find("최소라").Select
☞ [A3]셀부터 연속된 셀 범위의 1번째 열에서 ‘최소라'를 찾아서 선택합니다. |
3. Application 개체
1) Application 개체
○ 엑셀의 모든 개체 중 최상위 개체이면서 엑셀 자신을 의미
2) Application 개체의 주요 속성
속성 | 기능 | 사용 예 |
StatusBar | 상태표시줄에 메시지 설정 | Application.StatusBar=”매크로 실행 중” |
WorkSheetFunction | 엑셀 함수 사용 | Application.WorksheetFunction.Sum(Range(“A1:A10”)) |
▶ 그 외 주요 속성
속성 |
설명 | 사용 예 |
CutCopyMode |
복사나 잘라내기 상태 해제 |
Application.CutCopyMode=False ☞ 복사나 잘라내기 상태를 해제합니다. |
DisplayAlerts |
시스템 메시지의 표시 여부 설정 |
Application.DisplayAlerts=False ☞ 시스템 메시지를 표시하지 않습니다. 메시지 박스에 응답 단추가 있는 경우 각 대화상자마다 기본으로 선택된 단추 항목을 자동으로 선택합니다. 예를 들어, 삭제 여부를 묻는 메시지 박스가 표시된 경우 [예] 단추가 자동으로 선택됩니다. |
ScreenUpdating | 화면 업데이트 여부 설정 |
Application.ScreenUpdating=False ☞ 화면 업데이트 설정을 해제합니다. (화면 업데이트 : 코드 실행에 따른 화면 변화 표시) |
▶ Application의 단축 접근자
속성 |
설명 |
ActiveCell |
활성 셀 반환 |
ActiveSheet |
활성 시트 반환 |
ThisWorkbook |
현재 Workbook 개체 반환 |
ActiveWorkbook |
활성 통합 문서 반환 |
Selection |
선택된 개체 반환 |
3) Application 개체의 주요 메서드
매서드 |
설명 |
사용 예 |
Quit |
엑셀 프로그램 종료 |
Application.Quit ☞ 엑셀 프로그램을 종료합니다. |
InputBox |
Type에서 지정한 데이터를 입력할 수 있게 하는 입력 상자 표시 <Type> 0: 수식, 1: 숫자, 2: 텍스트, 3: 논리값(True, False), 8: Range 개체와 같은 셀 참조, 16: #N/A와 같은 오류 값, 64: 값의 배열 |
Application.InputBox(“사번을 입력하세요.”,”사원 검색”,Type:=2) ☞ 텍스트를 입력하는 입력 상자에 메시지 ‘사번을 입력하세요.’ 제목 표시줄에 ‘사원 검색’을 표시합니다. |
'오피스 활용 > 엑셀 함수와 메크로 활용' 카테고리의 다른 글
19. 사용자 정의 함수 만들기 (0) | 2012.11.24 |
---|---|
17. 프로그래밍 문법 알아보기 (0) | 2012.11.22 |
16. 프로그래밍 기본 개념 이해하기 (0) | 2012.11.04 |
15. 매크로 활용 및 관리하기 (1) | 2012.10.31 |
14. 매크로와 VBA 이해하기 (5) | 2012.10.19 |