Applies ToMicrosoft 365용 Access Access 2024 Access 2021 Access 2019 Access 2016

참고: 이 항목에 설명된 함수, 메서드, 개체 또는 속성은 Microsoft Jet Expression Service가 샌드박스 모드에서 실행 중이면 사용할 수 없으므로 안전하지 않은 식이 평가되지 않습니다. 샌드박스 모드에 대한 자세한 내용은 도움말에서 "샌드박스 모드"를 검색하세요.

ActiveX 개체에 대한 참조를 만들고 반환합니다.

구문

CreateObject ( class [, servername] )

CreateObject 함수 구문에는 다음과 같은 인수가 사용됩니다.

인수

설명

클래스

필수 요소입니다. Variant (String). 만들 개체의 애플리케이션 이름 및 클래스입니다.

Servername

선택 요소입니다. Variant (String). 개체를 만들 네트워크 서버의 이름입니다. servername이 빈 문자열("")인 경우 로컬 컴퓨터가 사용됩니다.

클래스 인수 구문 appname을 사용합니다.objecttype 및 에는 다음 부분이 있습니다.

구성 요소

설명

Appname

필수 요소입니다. Variant (String). 개체를 제공하는 애플리케이션의 이름입니다.

objecttype

필수 요소입니다. Variant (String). 만들 개체의 형식 또는 클래스.

주의

자동화를 지원하는 모든 애플리케이션은 하나 이상의 개체 유형을 제공합니다. 예를 들어 워드 프로세싱 애플리케이션은 Application 개체, Document 개체 및 도구 모음 개체를 제공할 수 있습니다.

ActiveX 개체를 만들려면 CreateObject 에서 반환한 개체를 개체 변수 에 할당합니다.

참고: VBA(Visual Basic for Applications) 모듈에서 이 함수를 사용하는 경우를 예로 들어 보겠습니다. VBA 사용에 대해 자세히 알아보려면 검색 옆의 드롭다운 목록에서 개발자 참고를 선택하고 검색 상자에 검색어를 하나 이상 입력하세요.

' Declare an object variable to hold the object ' reference. Dim as Object causes late binding. Dim ExcelSheet As ObjectSet ExcelSheet = CreateObject("Excel.Sheet")

이 예제에서는 Access 데이터베이스 내에서 Excel 스프레드시트 개체를 자동화합니다. 이 코드는 개체(이 경우 Microsoft Excel 스프레드시트)를 만드는 애플리케이션을 시작합니다. 개체가 만들어지면 정의한 개체 변수를 사용하여 코드에서 참조합니다. 다음 예제에서는 개체 변수, ExcelSheetApplication 개체 및 Cells 컬렉션을 포함한 기타 Excel 개체를 사용하여 새 개체의 속성과 메서드에 액세스합니다.

' Make Excel visible through the Application object.ExcelSheet.Application.Visible = True' Place some text in the first cell of the sheet.ExcelSheet.Application.Cells(1, 1).Value = "This is column A, row 1"' Save the sheet to C:\test.xls directory.ExcelSheet.SaveAs "C:\TEST.XLS"' Close Excel with the Quit method on the Application object.ExcelSheet.Application.Quit' Release the object variable.Set ExcelSheet = Nothing

As Object 절을 사용하여 개체 변수를 선언하면 모든 형식의 개체에 대한 참조를 포함할 수 있는 변수가 만들어집니다. 그러나 해당 변수를 통해 개체에 대한 액세스는 늦게 바인딩됩니다. 즉, 바인딩은 프로그램을 실행할 때 발생합니다. 초기 바인딩, 즉 프로그램이 컴파일될 때 바인딩되는 개체 변수를 만들려면 특정 클래스 ID를 사용하여 개체 변수를 선언합니다. 예를 들어 다음 Excel 참조를 선언하고 만들 수 있습니다.

Dim xlApp As Excel.Application Dim xlBook As Excel.WorkbookDim xlSheet As Excel.WorkSheetSet xlApp = CreateObject("Excel.Application")Set xlBook = xlApp.Workbooks.AddSet xlSheet = xlBook.Worksheets(1)

초기 바인딩된 변수를 통한 참조는 더 나은 성능을 제공할 수 있지만 선언 지정된 클래스 대한 참조만 포함할 수 있습니다.

CreateObject 함수에서 반환한 개체를 인수로 예상하는 함수에 전달할 수 있습니다. 예를 들어 다음 코드는 Excel.Application 개체에 대한 참조를 만들고 전달합니다.

Call MySub (CreateObject("Excel.Application"))

컴퓨터 이름을 CreateObjectservername 인수에 전달하여 원격 네트워크 컴퓨터에서 개체를 만들 수 있습니다. 해당 이름은 공유 이름의 컴퓨터 이름 부분과 동일합니다. "\\MyServer\Public"이라는 공유의 경우 서버 이름은 "MyServer"입니다.

참고:  원격 네트워크 컴퓨터에서 애플리케이션을 표시하는 방법에 대한 자세한 내용은 COM 설명서( Microsoft 개발자 네트워크 참조)를 참조하세요. 애플리케이션에 대한 레지스트리 키를 추가해야 할 수 있습니다.

다음 코드는 MyServer원격 컴퓨터에서 실행되는 Excel instance 버전 번호를 반환합니다.

Dim xlApp As ObjectSet xlApp = CreateObject("Excel.Application", "MyServer")Debug.Print xlApp.Version

원격 서버가 없거나 사용할 수 없는 경우 런타임 오류가 발생합니다.

참고:  개체의 현재 instance 없는 경우 CreateObject를 사용합니다. 개체의 instance 이미 실행 중인 경우 새 instance 시작되고 지정된 형식의 개체가 만들어집니다. 현재 instance 사용하거나 애플리케이션을 시작하고 파일을 로드하려면 GetObject 함수를 사용합니다.

개체가 단일 instance 개체로 등록된 경우 CreateObject가 실행되는 횟수에 관계없이 개체의 instance 하나만 만들어집니다.

예제

이 예제에서는 CreateObject 함수를 사용하여 참조()를 설정합니다.

xlApp

)에서 Excel로 참조를 사용하여 Excel의 Visible 속성에 액세스한 다음 Excel Quit 메서드를 사용하여 닫습니다. 마지막으로 참조 자체가 릴리스됩니다.

Dim xlApp As Object    ' Declare variable to hold the reference.Set xlApp = CreateObject("excel.application")    ' You may have to set Visible property to True    ' if you want to see the application.xlApp.Visible = True    ' Use xlApp to access Microsoft Excel's     ' other objects.xlApp.Quit    ' When you finish, use the Quit method to close Set xlApp = Nothing    ' the application, then release the reference.

도움이 더 필요하세요?

더 많은 옵션을 원하세요?

구독 혜택을 살펴보고, 교육 과정을 찾아보고, 디바이스를 보호하는 방법 등을 알아봅니다.

커뮤니티를 통해 질문하고 답변하고, 피드백을 제공하고, 풍부한 지식을 갖춘 전문가의 의견을 들을 수 있습니다.