자동화(이전의 OLE 자동화)는 애플리케이션이 개발 도구, 매크로 언어 및 자동화를 지원하는 기타 애플리케이션에 개체를 노출하는 데 사용하는 업계 표준 기술인 COM(컴포넌트 개체 모델)의 기능입니다. 예를 들어, 스프레드시트 애플리케이션은 워크시트, 차트, 셀 또는 셀 범위를 각각 다른 유형의 개체로 노출할 수 있습니다. 워드 프로세서에서는 애플리케이션, 문서, 단락, 문장, 북마크 또는 선택 항목과 같은 개체가 노출될 수 있습니다.
애플리케이션이 자동화를 지원하는 경우, 애플리케이션이 노출하는 개체는 Visual Basic에서 액세스할 수 있습니다. Visual Basic을 사용하여 개체에 대한 메서드를 호출하거나 개체의 속성을 가져와 설정하여 이러한 개체를 조작할 수 있습니다.
다음 예제에서는 Excel 개체를 만들고 Excel 개체에 액세스하는 방법을 보여줍니다.
Sub AccessExcelObject()
Dim excelApp As Object ' Excel Application Object
Dim excelWorkbook As Object ' Excel Workbook Object
' 새로운 Excel 애플리케이션 개체 생성
Set excelApp = CreateObject("Excel.Application")
' Excel을 화면에 표시 (선택 사항)
excelApp.Visible = True
' 새로운 Workbook 추가
Set excelWorkbook = excelApp.Workbooks.Add
' 데이터를 워크시트에 삽입
excelWorkbook.Worksheets(1).Cells(1, 1).value = "Hello, world."
' 삽입된 데이터에 볼드 서식 적용
excelWorkbook.Worksheets(1).Cells(1, 1).Font.Bold = True
' 워크북 저장
excelWorkbook.SaveAs "D:\파일.xlsx"
' 워크북 닫기
excelWorkbook.Close
' Excel 애플리케이션 종료
excelApp.Quit
' 개체 참조 해제
Set excelWorkbook = Nothing
Set excelApp = Nothing
End Sub
다음 예제에서는 Microsoft Word 개체를 만들고 Word 개체에 액세스하는 방법을 보여줍니다.
Sub AccessWordObject()
Dim wordApp As Object ' Word Application Object
Dim wordDoc As Object ' Word Document Object
' 새로운 Word 애플리케이션 개체 생성
Set wordApp = CreateObject("Word.Application")
' Word를 화면에 표시 (선택 사항)
wordApp.Visible = True
' 새로운 문서 추가
Set wordDoc = wordApp.Documents.Add
' 문서에 텍스트 삽입
wordDoc.Content.text = "Hello, world."
' 삽입된 텍스트에 볼드 서식 적용
wordDoc.Content.Font.Bold = True
' 문서 저장
wordDoc.SaveAs "D:\FILE.docx"
' 문서 닫기
wordDoc.Close
' Word 애플리케이션 종료
wordApp.Quit
' 개체 참조 해제
Set wordDoc = Nothing
Set wordApp = Nothing
End Sub
다음 함수를 사용하여 자동화 개체에 액세스합니다.
CreateObject : 지정된 유형의 새 개체를 만듭니다.
GetObject : 파일에서 개체를 검색합니다.
도움말 출처
Understanding automation (VBA)
Office VBA reference topic
learn.microsoft.com
'언어 참조' 카테고리의 다른 글
Sub 및 Function 프로시저 호출 (0) | 2023.08.08 |
---|---|
코드에서 괄호 사용 (0) | 2023.08.07 |
다른 응용 프로그램 간의 작업 (0) | 2023.08.06 |
재귀 프로시저 만들기 (0) | 2023.08.06 |
조건부 컴파일 이해 (0) | 2023.08.05 |