Работа с диалоговите прозорци, Excel за всички
Несъмнено всеки разработчик прави работата лесна потребителя малко, но това е по-лесно. И разбира се, понякога просто трябва обратна връзка от потребителя, когато на определени програми. За нея и аз искам да ви кажа днес.
Какво искам да кажа: има ситуации, когато е необходимо:
- да информира потребителя на кода;
- получите потвърждение от страна на потребителя да изпълни определено действие;
- да изисква всякаква информация (брой, търсене на текст, обхватът на търсене и т.н.).
Трябва само да заявите и потвърждение може да се направи с вече вграден диалогови прозорци.
От основните те са три вида:
MsgBox - информира потребителя с възможност да се боксира искане действие (Да, Не, Отмени, и т.н.);
InputBox - текстова информация от прозореца на заявката на потребителя (търсене на текст, дата, номер и т.н.);
Application.InputBox - малко повече от разширена версия InputBox с възможността да се определи не само текст и цифри, но също така посочи обхватът на клетките (например за да покаже на клетките, в които да търсят стойност или да бъдат боядисани).
ИНФОРМАЦИЯ ДИАЛОГ MsgBox
Най-простият тип. Той се използва за информиране на потребителя. Обикновено се използва в края на кода:
MsgBox strong> Promt. [бутони]. [Дял]. [HelpFile]. [Контекст]
Свързването инструкции е само първият вариант - Promt. Той се посочва директно съобщение на дисплея:
Се обяви Функция MessageBoxTimeOut Lib "USER32" Alias "MessageBoxTimeoutA" (ByVal hwnd толкова дълго. ByVal lpText Както стринга. ByVal lpCaption Както стринга. ByVal uType Както VbMsgBoxStyle. ByVal wLanguageId толкова дълго. ByVal dwMilliseconds толкова дълго), при условие
Освен текст очевидно послание и титлата. които могат да бъдат заменени с вашите собствени. Той се фокусира върху константа
Ако искате да се покаже съобщението за 10 секунди. необходимо е само да се замени от 5 до 10.
параметър
Под AutoCloseMsgBox ()Конст lSeconds Докато = 10
retval = MessageBoxTimeOut (0 "Files обработени. Отпечатване на списък?" vbNewLine _
"Ако е избрано действието на прозореца ще се затвори за 10 секунди." "Www.excel-vba.ru". _
vbInformation + vbYesNo. 0 , lSeconds * 1000)
Ако retval = 6 Тогава "Да бутон (Да) е натиснат