Shell 함수

적용 대상
Microsoft 365용 Access Access 2024 Access 2021 Access 2019 Access 2016

참고

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

실행 프로그램을 실행하고 성공한 경우 프로그램의 작업 ID를 나타내는 Variant (Double)를 반환하고, 그렇지 않으면 0을 반환합니다.

구문

Shell(pathname [, windowstyle ] )

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

인수 설명
경로 이름 필수 요소입니다. 변형 (문자열). 실행할 프로그램의 이름과 필요한 인수 또는 명령줄 스위치입니다. 디렉터리 또는 폴더 및 드라이브를 포함할 수 있습니다. Macintosh에서는 MacID 함수를 사용하여 응용 프로그램의 이름 대신 응용 프로그램의 서명을 지정할 수 있습니다. 다음 예제에서는 Microsoft Word의 서명을 사용합니다.Shell MacID("MSWD")
창 스타일 선택 요소입니다. 프로그램을 실행할 창의 스타일에 해당하는 변형(정수). 창 스타일을 생략하면 프로그램이 포커스와 함께 최소화된 상태로 시작됩니다. Macintosh(시스템 7.0 이상)에서 windowstyle 은 응용 프로그램을 실행할 때 포커스를 가져오는지 여부만 결정합니다.

    

windowstyle 명명된 인수에는 다음과 같은 값이 있습니다.

상수 Value 설명
vbHide 0 창이 숨겨지고 포커스가 숨겨진 창으로 전달됩니다. vbHide 상수는 Macintosh 플랫폼에서 적용되지 않습니다.
vbNormalFocus 1 창에 포커스가 있고 원래 크기와 위치로 복원됩니다.
vbMinimizedFocus 2 창이 포커스가 있는 아이콘으로 표시됩니다.
vbMaximizedFocus 3 포커스가 있을 때 창이 최대화됩니다.
vbNormalNoFocus 4 창이 가장 최근의 크기와 위치로 복원됩니다. 현재 활성 창은 활성 상태로 유지됩니다.
vbMinimizedNoFocus 6 창이 아이콘으로 표시됩니다. 현재 활성 창은 활성 상태로 유지됩니다.

    

주의

셸 함수가 명명된 파일을 성공적으로 실행하면 시작된 프로그램의 작업 ID를 반환합니다. 작업 ID는 실행 중인 프로그램을 식별하는 고유 번호입니다. 셸 함수가 명명된 프로그램을 시작할 수 없으면 오류가 발생합니다.

Macintosh에서는 vbNormalFocus, vbMinimizedFocus 및 vbMaximizedFocus 가 모두 응용 프로그램을 포그라운드에 배치합니다. vbHide, vbNoFocus, vbMinimizeFocus 는 모두 응용 프로그램을 백그라운드에 배치합니다.

참고

기본적으로 Shell 함수는 다른 프로그램을 비동기적으로 실행합니다. 즉, 셸 로 시작된 프로그램이 셸 함수 다음 에 오는 문이 실행되기 전에 실행이 완료되지 않을 수 있습니다.

예제

참고

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

이 예제에서는 Shell 함수를 사용하여 사용자가 지정한 애플리케이션을 실행합니다. MacIntosh에서 기본 드라이브 이름은 "HD"이며 경로 이름의 일부가 백슬래시 대신 콜론으로 구분됩니다. 마찬가지로 \Windows 대신 Macintosh 폴더를 지정합니다.

' Specifying 1 as the second argument 
' opens the application in normal size and 
' gives it the focus.
Dim RetVal
' Run Calculator.
RetVal = Shell("C:\WINDOWS\CALC.EXE", 1)