증상
Office 애플리케이션을 자동화하고 프로그래밍 방식으로 Microsoft VBA(Visual Basic for Applications) 환경 및 개체 모델을 조작하기 위해 작성된 코드는 Visual Basic 또는 VBA의 오류 메시지 중 하나로 Office에서 실패할 수 있습니다.
런타임 오류 '6068': Visual Basic 프로젝트에 대한 프로그래밍 방식 액세스를 신뢰할 수 없음
Microsoft Visual C++, MFC(Microsoft Foundation Classs) 또는 ATL(ActiveX 템플릿 라이브러리)에서:
HRESULT = 0x800A17B4(-2146822220) "Visual Basic 프로젝트에 대한 프로그래밍 방식 액세스를 신뢰할 수 없음"
동일한 코드는 Office 97 및 Office 2000이 있는 컴퓨터에서 오류 없이 작동합니다.
원인
Office는 사용자가 이러한 액세스를 허용하도록 선택하지 않는 한 Automation 클라이언트에서 VBA 개체 모델에 대한 프로그래밍 방식 액세스를 의도적으로 잠그는 보안 옵션을 추가합니다. 이는 사용자 및 애플리케이션별 설정이며 기본적으로 액세스를 거부합니다. 이 보안 옵션을 사용하면 권한이 없는 프로그램이 최종 사용자 시스템에 해를 끼칠 수 있는 "자체 복제" 코드를 빌드하기가 더 어려워집니다.
해결 방법
Automation 클라이언트가 VBA 개체 모델에 프로그래밍 방식으로 액세스할 수 있도록 하려면 코드를 실행하는 사용자에게 명시적으로 액세스 권한을 부여해야 합니다. 액세스를 켜려면 사용자가 다음 단계를 수행해야 합니다.
Office 2003 및 Office XP
-
해당 Office 2003 또는 Office XP 애플리케이션을 엽니다. 도구 메뉴에서 매크로를 클릭한 다음 보안을 클릭하여 매크로 보안 대화 상자를 엽니다.
-
신뢰할 수 있는 원본 탭에서 Visual Basic Project 검사 대한 액세스 신뢰 상자를 클릭하여 액세스를 켭니다.
-
확인을 클릭하여 설정을 적용합니다. COM(구성 요소 개체 모델) 추가 기능 또는 템플릿에서 자동화하는 경우 코드가 제대로 실행되도록 애플리케이션을 다시 시작해야 할 수 있습니다.
Office 2007
-
문제의 2007 Microsoft Office 시스템 애플리케이션을 엽니다. Microsoft Office 단추를 클릭한 다음애플리케이션 옵션을 클릭합니다.
-
보안 센터 탭을 클릭한 다음보안 센터 설정을 클릭합니다.
-
매크로 설정 탭을 클릭하고 VBA 프로젝트 개체 모델에 대한 신뢰 액세스 검사 상자를 클릭한 다음 확인을 클릭합니다.
-
확인을 클릭합니다.