Использование функции InputBox в VBA Excel, ее синтаксис и параметры. Значения, возвращаемые функцией InputBox. Примеры использования.
Функция InputBox предназначена в VBA Excel для вывода диалогового окна с приглашением ввести текст и возвращения введенного значения типа String с содержимым текстового поля.
Синтаксис функции
InputBox ( Prompt [, Title ] [, DefaultResponse ] [, X ] [, Y ])
Обязательным параметром функции InputBox является Prompt, если значения остальных параметров явно не указаны, используются их значения по умолчанию.
Параметры функции
Параметр | Описание | Значение по умолчанию |
Prompt | Обязательный параметр. Выражение типа String, отображаемое в диалоговом окне в виде сообщения, приглашающего ввести текст в текстовое поле. Разделить на строки сообщение можно с помощью константы vbNewLine. | Нет |
Title | Необязательный параметр. Выражение типа String, отображаемое в заголовке диалогового окна. | Имя приложения* |
DefaultResponse | Необязательный параметр. Выражение типа String, отображаемое в текстовом поле при открытии диалога. | Пустая строка |
X | Необязательный параметр. Числовое выражение, определяющее в твипах** расстояние от левого края экрана до левого края диалогового окна. | Горизонтальное выравнивание по центру |
Y | Необязательный параметр. Числовое выражение, определяющее в твипах** расстояние от верхнего края экрана до верхнего края диалогового окна. | Приблизительно равно 1/3 высоты экрана |
*В Excel по умолчанию в заголовке диалогового окна InputBox выводится строка: «Microsoft Excel».
**Твип (англ. twip) — типографская единица измерения, равная одной двадцатой пункта (point, отсюда и название: Twentieth of a Point). Твип равен 1/1440 дюйма (точно) или 1/567 сантиметра (приближенно).
Если X и Y задать равными нулю, диалоговое окно InputBox отобразится в левом верхнем углу экрана.
Возвращаемые значения
Кнопка | Возвращаемое значение |
OK | Значение типа String с содержимым текстового поля |
Cancel | Пустая строка |
Примеры
Пример 1
Ознакомьтесь с работой функции InputBox на простом примере, написав в текстовом поле сообщение и закрывая диалоговое окно кнопками OK, Cancel и крестиком в правом верхнем углу:
1 2 3 4 5 |
Sub Test1() Dim a As String a = InputBox("Напишите что-нибудь ...") MsgBox a End Sub |
Пример 2
В этом примере добавим все основные параметры и посмотрим, что из этого получится:
1 2 3 4 5 6 7 |
Sub Test2() Dim a As String a = InputBox("Напишите что-нибудь ...", _ "Диалоговое окно функции InputBox", _ "Здесь можно что-нибудь написать", 5670 / 2, 5670 / 2) MsgBox a End Sub |
Обратите внимание, что вместо значений параметров X и Y используются выражения (5670 разделить на 2) и все работает. Диалоговое окно из примера 2 открывается приблизительно в 5 сантиметрах от верхней и левой границ экрана.