Презентация, доклад по программированию на VBA (Excel) на тему Диалоговые окна

Содержание

Диалог с пользователемДля удобства пользователя при работе с программой зачастую необходимо выводить какие либо сообщения или делать запросы. Для того чтобы было возможным осуществлять диалог с пользователем, в программе VBA (Excel) существуют функции:MsgBox InputBox.

Слайд 1Диалоговые окна.

Диалоговые окна.

Слайд 2Диалог с пользователем
Для удобства пользователя при работе с программой зачастую необходимо

выводить какие либо сообщения или делать запросы. Для того чтобы было возможным осуществлять диалог с пользователем, в программе VBA (Excel) существуют функции:
MsgBox
InputBox.
Диалог с пользователемДля удобства пользователя при работе с программой зачастую необходимо выводить какие либо сообщения или делать

Слайд 3Функция VBA MsgBox
Функция VBA MsgBox представляет пользователю простой способ отображения сообщения.

Также эта функция задает ответную реакцию пользователя на запрос (передает результат щелчка на кнопке ОК, Отмена и т.п.).
Функция VBA MsgBoxФункция VBA MsgBox представляет пользователю простой способ отображения сообщения. Также эта функция задает ответную реакцию

Слайд 4Синтаксис функции MsgBox:
MsgBox (Запрос [, Кнопки] [, Заголовок] [, Справка, Раздел])

Запрос

- определяет текст, который будет отображаться в окне сообщения (обязательный параметр).

Синтаксис функции MsgBox:MsgBox (Запрос [, Кнопки] [, Заголовок] [, Справка, Раздел])Запрос - определяет текст, который будет отображаться

Слайд 5Кнопки - содержит числовое выражение, которое определяет кнопки, отображаемые в окне

сообщения (необязательный параметр). Возможные значения приводятся в таблице. Для ввода двух параметров кнопок (например, кнопки и значок вида сообщения) константы разделяются оператором Or.
Кнопки - содержит числовое выражение, которое определяет кнопки, отображаемые в окне сообщения (необязательный параметр). Возможные значения приводятся

Слайд 6Заголовок - одержит заголовок окна сообщения (необязательный параметр).
Справка, Раздел - указывают

файл и раздел справочной системы (необязательные параметры).

Заголовок - одержит заголовок окна сообщения (необязательный параметр).Справка, Раздел - указывают файл и раздел справочной системы (необязательные

Слайд 7Константы, используемые для выбора кнопок в функции MsgBox

Константы, используемые для выбора кнопок в функции MsgBox

Слайд 8Константы, используемые для выбора кнопок в функции MsgBox

Константы, используемые для выбора кнопок в функции MsgBox

Слайд 9Константы, используемые для выбора кнопок в функции MsgBox

Константы, используемые для выбора кнопок в функции MsgBox

Слайд 10Пример:
В данном примере будет выводиться выводится запрос на вставку смайлика на

активный лист.
Пример:В данном примере будет выводиться выводится запрос на вставку смайлика на активный лист.

Слайд 11Программный код:
Sub VvodSmil()
Dim Otvet As Double
Otvet = MsgBox(" Вы хотите вставить

смайлик на активный лист?", vbYesNoCancel Or 32, "Вопрос")
If Otvet = vbYes Then
ActiveCell.FormulaR1C1 = _ ActiveSheet.Shapes.AddShape(msoShapeSmileyFace, 191, 200, 61, 54).Select
ElseIf Otvet = vbCancel Then
Exit Sub
Else
MsgBox "Как хотите. "
End If
End Sub
Программный код:Sub VvodSmil()Dim Otvet As DoubleOtvet = MsgBox(

Слайд 12Пояснения к программному коду:
В первой строчке объявляем процедуру VvodSmil()
во второй –

объявляем переменную Otvet
в третьей - переменной Otvet присваиваем значение окна вывода сообщений ( функция MsgBox), в котором будет делать ся запрос на вставку смайлика на активный лист
Пояснения к программному коду:В первой строчке объявляем процедуру VvodSmil()во второй – объявляем переменную Otvet в третьей -

Слайд 13
при выборе ответа да вставляется смайлик

при выборе ответа да вставляется смайлик

Слайд 14При нажатии на кнопку Отмена процедура прерывается.
И при выборе ответа Нет

выходит окно сообщений с фразой «Как хотите».





При нажатии на кнопку Отмена процедура прерывается.И при выборе ответа Нет выходит окно сообщений с фразой «Как

Слайд 15Константы, возвращаемые функцией MsgBox
Названия констант в программном коде можно заменить на

их значения

Константы, возвращаемые функцией MsgBoxНазвания констант в программном коде можно заменить на их значения

Слайд 16Использование окна ввода данных

Использование окна ввода данных

Слайд 17Использование окна ввода данных
Окно ввода данных — это простое диалоговое окно,

которое позволяет пользователю ввести единственное значение. Например, можно применить окно ввода данных, чтобы предоставить пользователю возможность ввести текст, числа или даже диапазон значений. Для создания окна ввода используются две функции InputBox: одна в VBA, а вторая в Excel.
Использование окна ввода данныхОкно ввода данных — это простое диалоговое окно, которое позволяет пользователю ввести единственное значение.

Слайд 18Функция InputBox в VBA
Данная функция имеет следующий синтаксис:
InputBox (Запрос [, Заголовок]

[, По_умолчанию] [, xpos] [ ,ypos] [, Справка, Раздел])
• Запрос— указывает текст, отображаемый в окне ввода (обязательный параметр).
• Заголовок— определяет заголовок окна ввода (необязательный параметр).
• По_умолчанию— задает значение, которое отображается в окне ввода по умолчанию (необязательный параметр).
• xpos, ypos— определяют координаты верхнего левого угла окна ввода на экране (необязательные параметры).
• Справка, Раздел— указывают файл и раздел в справочной системе (необязательные параметры).
Функция InputBox в VBAДанная функция имеет следующий синтаксис:InputBox (Запрос [, Заголовок] [, По_умолчанию] [, xpos] [ ,ypos]

Слайд 19Параметры вводятся:
через запятую по порядку, а отсутствующие параметры разделяются пробелами

с запятой
x = InputBox("Введите число", "Ввод числа ", , 50,50)
либо указываются непосредственно названия вводимых параметров, после параметра ставится двоеточие и равно, а затем указывается его значение
x = InputBox(prompt:="Введите число", _
Title:=" Ввод числа ", xpos:=45, ypos:=45)
Параметры вводятся: через запятую по порядку, а отсутствующие параметры разделяются пробелами с запятойx = InputBox(

Слайд 20Функция InputBox запрашивает у пользователя единственное значение. Она всегда возвращает строку,

поэтому может понадобиться преобразовать результат в числовое значение.
Текст, отображаемый в окне ввода, может достигать 1024 символов (длина может изменяться в зависимости от ширины используемых символов).

Функция InputBox запрашивает у пользователя единственное значение. Она всегда возвращает строку, поэтому может понадобиться преобразовать результат в

Слайд 21Пример 1
Sub OknoVvoda()
x = InputBox("Введите число", "Ввод числа")
MsgBox "Переменная " &

x & " Тип данных: " _
& TypeName(x)
End Sub
Пример 1Sub OknoVvoda()x = InputBox(

Слайд 22Введем в окно ввода слово «текст»










Тип определился как строковый.

Введем в окно ввода слово «текст»Тип определился как строковый.

Слайд 23Введем в окно ввода число «123»










Тип определился как строковый.

Введем в окно ввода число «123»Тип определился как строковый.

Слайд 24Программирование кнопки Cancel в функции InputBox
Нажатие на кнопку Cancel в функции

InputBox возвращает пустую текстовую строку, поэтому для того чтобы запрограммировать выход из процедуры нажатием кнопки Cancel, надо ввести условную конструкцию If, в которой проверяется истиность условия ввода пустой строки.
Программирование кнопки Cancel в функции InputBoxНажатие на кнопку Cancel в функции InputBox возвращает пустую текстовую строку, поэтому

Слайд 25Пример 2
Sub OknoVvoda_Cancel()
x = InputBox("Введите число", "Ввод числа")

' проверка на нажатие

Cancel
If x = "" Then
Exit Sub
End If

MsgBox "Переменная " & x & " Тип данных: " _
& TypeName(x)
End Sub
Пример 2Sub OknoVvoda_Cancel()x = InputBox(

Слайд 26Метод InputBox в Excel
Использование метода Excel InputBox (вместо функции VBA InputBox)

предоставляет три преимущества:
• можно задать тип возвращаемого значения;
• можно указать диапазон листа, обведя мышью ячейки листа;
• производится автоматическая проверка правильности введенных данных.
Метод InputBox в ExcelИспользование метода Excel InputBox (вместо функции VBA InputBox) предоставляет три преимущества:• можно задать тип

Слайд 27Метод InputBox имеет следующий синтаксис:
object.InputBox(Запрос,Заголовок,По_умолчанию,Слева,Сверху, Справка, Раздел, Тип)
Запрос— указывает текст,

отображаемый в окне ввода (обязательный параметр).
• Заголовок — определяет заголовок окна ввода (необязательный параметр).
• По_умолчаиию — задает значение, которое отображается в окне ввода но умолчанию
(необязательный параметр).
Метод InputBox имеет следующий синтаксис:object.InputBox(Запрос,Заголовок,По_умолчанию,Слева,Сверху, Справка, Раздел, Тип) Запрос— указывает текст, отображаемый в окне ввода (обязательный параметр).•

Слайд 28• Слева, Сверху —определяют координаты верхнего левого угла окна ввода на

экране
(необязательные параметры).
• Справка, Раздел— указывают файл и раздел в справочной системе (необязательные параметры).
• Тип— указывает код типа данных, который будет возвращаться методом (необязательный параметр).
• Слева, Сверху —определяют координаты верхнего левого угла окна ввода на экране(необязательные параметры).• Справка, Раздел— указывают файл

Слайд 29Коды типов возвращаемых методом Excel InputBox данных
Код Значение
0 Формула
1 Число
2 Строка

(текст)
•1 Булево значение (ИСТИНА ИЛИ ЛОЖЬ)
8 Ссылка на ячейку как объект диапазона
16 Значение ошибки, такое, как # н / д
64 Массив значений
Коды типов возвращаемых методом Excel InputBox данныхКод 	Значение0 	Формула1 	Число2 	Строка (текст)•1 	Булево значение (ИСТИНА ИЛИ ЛОЖЬ)8

Слайд 30Пример 3
Sub OknoVvoda1()
x = Application.InputBox(prompt:=" Введите число ", _
Title:=" Ввод числа

", Type:=1)
MsgBox "Переменная " & x & " Тип данных: " _
& TypeName(x)
End Sub
Пример 3Sub OknoVvoda1()x = Application.InputBox(prompt:=

Слайд 31Введем с клавиатуры цифры










Тип определится как числовой

Введем с клавиатуры цифрыТип определится как числовой

Слайд 32Если вместо цифр мы введем буквы










Появится сообщение об ошибке

Если вместо цифр мы введем буквыПоявится сообщение об ошибке

Слайд 33Пример 4
Метод позволяет вводить диапазон значений

Sub OknoVvoda2() x = Application.InputBox(prompt:=" Введите число

", _ Title:=" Ввод числа ", Type:=64) Range("A1:C1") = x End Sub

Пример 4Метод позволяет вводить диапазон значенийSub OknoVvoda2() x = Application.InputBox(prompt:=

Слайд 34Введем несколько значений в смежные ячейки






В результате выполнения процедуры убедимся, что

выделенный диапазон был помещен в указанные ячейки

Введем несколько значений в смежные ячейкиВ результате выполнения процедуры убедимся, что выделенный диапазон был помещен в указанные

Слайд 35Программирование кнопки Cancel в методе InputBox
Нажатие на кнопку Cancel в методе

InputBox возвращает False, поэтому для того чтобы запрограммировать выход из процедуры нажатием кнопки Cancel, надо ввести условную конструкцию If, в которой проверяется истинность условия ввода False.
Программирование кнопки Cancel в методе InputBoxНажатие на кнопку Cancel в методе InputBox возвращает False, поэтому для того

Слайд 36Пример 5
Sub OknoVvoda1_Cancel()
x = Application.InputBox(prompt:=" Введите число ", _
Title:=" Ввод числа

", Type:=1)

' проверка на нажатие Cancel
If x = False Then
Exit Sub
End If

MsgBox "Переменная " & x & " Тип данных: " _
& TypeName(x)
End Sub
Пример 5Sub OknoVvoda1_Cancel()x = Application.InputBox(prompt:=

Слайд 37Домашнее задание
Прочитать и выучить лекцию

Домашнее заданиеПрочитать и выучить лекцию

Что такое shareslide.ru?

Это сайт презентаций, где можно хранить и обмениваться своими презентациями, докладами, проектами, шаблонами в формате PowerPoint с другими пользователями. Мы помогаем школьникам, студентам, учителям, преподавателям хранить и обмениваться учебными материалами.


Для правообладателей

Яндекс.Метрика

Обратная связь

Email: Нажмите что бы посмотреть