Функція Shell

Застосовується до
Access для Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Примітка.

Функція, метод, об’єкт або властивість, описана в цьому розділі, недоступна, якщо Microsoft Jet Expression Service працює в режимі ізольованого програмного середовища, що запобігає обчисленню потенційно небезпечних виразів. Щоб отримати докладні відомості про режим ізольованого програмного середовища, у вікні довідки шукайте за запитом "режим ізольованого програмного середовища".

Запускає виконувану програму та в разі успіху повертає дані типу Variant (Double), що відповідають ідентифікатору завдання програми, в іншому випадку повертає нуль.

Синтаксис

Shell(pathname [, windowstyle ] )

Синтаксис функції Shell має такі аргументи:

Аргумент Опис
pathname Обов’язковий аргумент. Дані типу Variant (String). Назва програми для виконання та будь-які необхідні аргументи або перемикачі командного рядка; можуть містити каталог або папку та диск. У Macintosh можна використовувати функцію MacID , щоб указати підпис програми замість її імені. У наведеному нижче прикладі використовується підпис для Microsoft Word:Shell MacID("MSWD")
windowstyle Необов’язковий аргумент. Дані типу Variant (Integer), що відповідають стилю вікна, у якому потрібно запустити програму. Якщо аргумент windowstyle не вказано, програму буде згорнуто з фокусом. У системі Macintosh (система 7.0 або пізнішої версії) windowstyle лише визначає, чи отримує програма фокус під час запуску.

    

Аргумент з іменем windowstyle має такі значення:

Константа Значення Опис
vbHide 0 Вікно приховане, і фокус передається до прихованого вікна. Константа vbHide не застосовується на платформах Macintosh.
vbNormalFocus 1 Вікно перебуває у фокусі та відновлюється до вихідних розміру й розташування.
vbMinimizedFocus 2 Вікно відображається у вигляді піктограми з фокусом.
vbMaximizedFocus 3 Вікно розгорнуто з фокусом на ньому.
vbNormalNoFocus 4 Вікно відновлюється до своїх останніх розміру й розташування. Вікно, яке зараз є активним, залишається активним.
vbMinimizedNoFocus 6 Вікно відображається у вигляді піктограми. Вікно, яке зараз є активним, залишається активним.

    

Примітки

Якщо функція Shell успішно виконує іменований файл, вона повертає ідентифікатор завдання запущеної програми. Ідентифікатор завдання – це унікальний номер, який визначає запущену програму. Якщо функції Shell не вдається запустити іменовану програму, стається помилка.

У системі Macintosh усі значення vbNormalFocus, vbMinimizedFocus і vbMaximizedFocus задають програмі активний режим; а vbHide, vbNoFocus і vbMinimizeFocus – фоновий.

Примітка.

За замовчуванням функція Shell асинхронно запускає інші програми. Це означає, що програма, яку запустила функція Shell, може не завершити свою роботу до виконання операторів, що йдуть за функцією Shell.

Приклад

Примітка.

У прикладах нижче показано використання цієї функції в модулі Visual Basic for Applications (VBA). Щоб отримати докладні відомості про використання модуля VBA, клацніть пункт Довідник розробника в розкривному списку поряд із полем Пошук і введіть у поле пошуку принаймні один термін.

У цьому прикладі функцію Shell використано, щоб запустити програму, визначену користувачем. У системі MacIntosh стандартне ім’я диска – "HD", а частини шляху відокремлюються двокрапками, а не зворотними скісними рисками. Аналогічно, потрібно вказати папки Macintosh, а не \Windows.

' 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)