엑셀 VBA에서 통합 문서 및 워크 시트 개체에 대해 자세히 알아보십시오.

오브젝트 계층

엑셀 VBA에서, 객체가 다른 객체를 포함 할 수 있으며 그 목적은, 엑셀 VBA 프로그래밍 객체 계층 구조 작업을 포함 즉 등 다른 객체를 포함 할 수 있습니다. 이것은 아마도 매우 혼란 소리, 그러나 우리는 그것을 명확하게됩니다.

모든 객체의 어머니는 엑셀 자체입니다. 우리는 응용 프로그램 개체 호출합니다. 응용 프로그램 개체가 다른 개체를 포함합니다. 예를 들어, 통합 문서 개체 (Excel 파일). 이것은 사용자가 만든 통합 문서가 될 수 있습니다.

통합 문서 객체는 워크 시트 개체로 다른 개체를 포함합니다. 워크 시트 개체는 Range 개체와 같은 다른 개체를 포함합니다.

만들기 매크로장 명령 버튼을 클릭하여 코드를 실행하는 방법을 보여줍니다. 우리는 다음과 같은 코드 라인을 사용 :

Range("A1").Value = "Hello"

하지만 우리가 정말로 의미하는 것은이었다

Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"

참고 : 객체가 점으로 연결되어 있습니다. 다행히도, 우리는 코드 라인이 방법을 추가 할 필요가 없습니다. 첫 번째 워크 시트에 /vba-excel-files-create-a-macro.xls [만들-A-macro.xlsm]`: 그건 우리가 링크`우리의 명령 단추를 배치하기 때문이다. 서로 다른 워크 시트에 일을 변경하려는 경우, 당신은 워크 시트 개체를 포함 할 필요가 있음을 알고 있어야합니다. 읽어.

컬렉션

당신은 통합 문서와 워크 시트는 모두 복수 것을 알 수 있습니다. 그들은 컬렉션이기 때문입니다. 통합 문서 수집은 현재 열려있는 모든 통합 문서의 개체를 포함합니다. 워크 시트 컬렉션의 모든 워크 시트가 통합 문서의 개체를 포함합니다.

Worksheet Names

당신은 세 가지 방법으로, 예를 들어, 컬렉션의 멤버로 하나의 워크 시트 개체를 참조 할 수 있습니다.

  1. 워크 시트 이름을 사용.

Worksheets("Sales").Range("A1").Value = "Hello"

인덱스 번호가 사용 2. (1 왼쪽부터 제 워크이다).

Worksheets(1).Range("A1").Value = "Hello"
  1. 코드 명을 사용.

Sheet1.Range("A1").Value = "Hello"

/ VBA를 만들-A-매크로 # 비주얼 기본 편집기 [VBA 편집기를]`다음`링크를 열고 워크 시트의 코드 명을 참조하십시오. 프로젝트 탐색기에서 첫 번째 이름은 코드 명이다. 두 번째 이름은 워크 시트 이름 (판매)이다.

CodeName

참고 :이 워크 시트를 참조하는 가장 안전한 방법입니다 있도록 워크 시트 이름 또는 워크 시트의 순서를 변경하는 경우 코드 명이 동일합니다. 워크 시트의 코드 명을 변경보기, 속성 창을 클릭합니다. 하나의 단점은 다른 통합 문서의 워크 시트를 참조하는 경우에는 코드 명을 사용하지 수 있습니다.

속성 및 메소드

이제 몇 가지 속성과 통합 문서 및 워크 시트 수집 방법에 대해 살펴 보도록하겠습니다. 등록 방법은 일을 할 때 (그들은는 컬렉션 작업을 수행), 컬렉션 무언가 (가 컬렉션을 설명)입니다.

워크 시트에 / VBA 만들-A-매크로 # 명령 버튼을 [명령 단추]`및 코드 줄을 추가하십시오 ‘링크를 놓고

  1. 통합 문서 컬렉션의 Add 메서드는 새 통합 문서를 만듭니다.

Workbooks.Add

참고 : 워크 시트 컬렉션의 Add 메서드는 새 워크 시트를 만듭니다.

  1. 워크 시트 컬렉션의 Count 속성은 통합 문서의 워크 시트의 수를 계산합니다.

MsgBox Worksheets.Count

당신이 시트에 명령 단추를 클릭하면 검색 결과 :

Count Property in Excel VBA

참고 : 통합 문서 컬렉션의 Count 속성은 활성 통합 문서의 수를 계산합니다.