본문 바로가기

엑셀/VBA

VBA를 작성하여 엑셀 개체 다루기

반응형

VBA에서 엑셀의 구성요소들인 개체를 다루기 위해 Workbook, Worksheet, Range 등을 사용합니다. 엑셀의 각 개체들을 VBA로 어떻게 제어하는지 알아보겠습니다.

 

1. 통합 문서 다루기

 VBA에서 통합 문서를 다룰 때 Workbook을 사용합니다. Workbook 개체를 대상으로 하는 주요 속성과 사용 방법을 알아보겠습니다.

 

  ① Application.Workbook.Count

     현재 열려 있는 모든 통합 문서의 개수를 구합니다.

 

  ② Workbooks(1).Activate

     현재 열려 있는 통합 문서 중에서 첫 번째 통합 문서를 활성화합니다. 

 

  ③ Workbooks.Open(엑셀 파일명)

      현재 폴더에 있는 엑셀 파일 중에서 지정한 엑셀 파일명의 통합 문서를 엽니다.

 

  ④ Workbooks.Close

     현재 열려 있는 모든 통합 문서를 닫습니다.

 

  ⑤ Workbooks.Add

     새로운 통합 문서를 만듭니다.

 

  ⑥ ActiveWorkbook.Name

     현재 활성화된 통합 문서의 이름을 구합니다.

 

  ⑦ ThisWorkbook.Name

     프로시저(매크로)를 실행 중인 통합 문서 이름을 구합니다.

2. 워크 시트와 셀 다루기

 

 VBA에서 워크시트를 나타내는 것은 WorkSheet 개체이고, 셀을 나타내는 것은 Range 개체입니다. 이 개체들의 주요 속성을 통해 워크시트와 셀을 다루는 방법에 대해 알아보겠습니다.

 

  ① Worksheets(워크시트 이름).Activate

     통합 문서에 있는 워크시트 중에서 주어진 '워크시트 이름'의 워크시트를 활성화합니다.

 

  ② ActiveSheet.Name

     활성화된 워크시트의 이름을 구합니다.

 

  ③ Worksheets.Add

     새 워크시트를 삽입합니다.

 

  ④ Worksheets(워크시트 이름).Range(셀 번호).Activate

     주어진 워크시트 이름의 워크시트에서 셀 번호에 해당하는 셀을 선택합니다.

 

  ⑤ Worksheets(워크시트 이름).Range(셀 범위).Activate

     주어진 워크시트 이름의 워크시트에서 셀 범위를 선택합니다.

 

  ⑥ Range(셀 번호).Valve =

     현재 활성화되어 있는 워크시트에서 해당 셀 번호을 입력합니다. '.Valve'는 생략 가능합니다.

     즉,

          Range(셀 번호) = 

     로 사용하여도 됩니다.

 

  ⑦ Worksheets(워크시트 이름).Cells(행 번호, 열 번호) =

     현재 활성화되어 있는 워크시트에서 해당 셀 주소에 을 입력합니다. ⑥번 항의 셀 번호 형식을 셀 주소 형식으로 표현한 것입니다.

 

  ⑧ ActiveCell.Cells(행 번호열 번호) = 

     현재 활성화되어 있는 셀에서 아래쪽을 행 번호만큼 오른쪽으로 열 번호만큼 떨어져 있는 셀에 을 입력합니다.

 

  ⑨ ActiveSheet.Range(셀 범위).Offset(행 번호열 번호).Select

     현재 활성화되어 있는 워크시트에서 해당 셀 범위에서 아래쪽을 행 번호만큼 오른쪽으로 열 번호만큼 떨어져 있는 셀 범위를 선택합니다.

반응형