Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
8 Работа с объектами+ формы.docx
Скачиваний:
4
Добавлен:
02.09.2019
Размер:
172 Кб
Скачать
☆

Создание пользовательской формы

Шаг 1

Выберите команду Вставить UserForm (Insert UserForm). В редакторе Visual Basic появится:

 Окно с пользовательской формой

 Панель инструментов Панель элементов (Toolbox).

Должно получиться вот так:

Шаг 2

Используя диалоговое окно Свойства (Properties), отображаемое нажатием кнопки и Панель элементов (Toolbox), создайте из пользовательской формы диалоговое окно, показанное на рис 4.2.

Это окно состоит из трех кнопок и одного поля. Свойство Caption пользовательской формы определите равным Песнь о воробушке и бабочке, а кнопок - равными Первый акт, Второй акт и Третий акт.

Шаг 3

Для того чтобы написать процедуру обработки события нажатия кнопки Первый акт, дважды щелкните ее. Активизируется модуль UserForm1, в которой введите процедуру:

Private Sub CommandButton1_Click()

TextBox1.Text="Воробышек за бабочкой прыг-прыг-прыг"

End Sub

Для обработки событий нажатий кнопок Второй и Третий акт в модуле UserForm1 введите следующие две процедуры:

Private Sub CommandButton2_Click()

TextBox1.Text="Воробышек за бабочкой скок-скок-скок"

EndSub

Private Sub CommandButton3_Click()

TextBox1.Text="Воробышек бабочку ням-ням-ням"

End Sub

Шаг 4

Процесс создания диалогового окна и процедур, связанных с ним, завершен. Для того чтобы проверить, как работает созданная программа, нажмите кнопку Запуск подпрограммы/User form (Run) . На экране на фоне рабочего листа отобразится диалоговое окно Песнь о воробушке и бабочке. В поле выведется сообщение Воробышек за бабочкой скок-скок-скок, при нажатой клавише «Акт второй» Рис.4.3.

Для закрытия диалогового окна «Песнь о воробушке и бабочке» нажмите системную кнопку, расположенную в верхней правой части строки заголовка диалогового окна.

Задание для индивидуального выполнения по теме «Работа с объектами в Microsoft Excel»

Задание И 4.1 .Работа с объектами

Написать код, который подготовит личную карточку человека, содержащую следующие сведения: Фамилия, Имя, Отчество, Дата рождения, Домашний адрес, Телефон.

Указание

Для заголовка личной карточки используйте: шрифт – Times New Roman, размер шрифта – 14 пт, начертание шрифта – полужирное (Bold), цвет шрифта – красный (ColorIndex). Для названий полей личной карточки используйте: шрифт – Arial Cyr, размер шрифта – 10 пт, начертание шрифта – курсив (Italic), цвет шрифта – синий (ColorIndex). Установите необходимую ширину колонки и уберите лишние листы.

Используйте нижеприведенный код за основу всей программы.

Sub People()

Worksheets(1).Name = "Человек" 'Первый лист изменяет название

Worksheets(1).Select 'Выделение первого листа

Cells(1, 1).Select 'Выделение первой ячейки

ActiveCell.Font.Size = 14 'Размер шрифта активной ячейки

ActiveCell.Font.ColorIndex = 3 'Цвет красный

ActiveCell.Value = "Личная карточка" 'Запись "Личная карточка"

Columns("a:a").ColumnWidth = 40 'Ширина первого столбца 40

End Sub

Задание И 4.2.Работа с формами

Создать приложение, которое позволит создать форму для работы с базой данных студентов. Задание выполнять на основе результата Задания 1. Пользовательская форма должна появляться на рабочем листе по нажатию кнопки «Карточка»

  1. Создайте форму, изображенную на рисунке

Нажатие кнопки «Занести в Базу Данных» должно привести к сохранению всех данных на рабочем листе.

Указание

При нажатии на кнопку «Занести в Базу Данных» важно чтобы каждая новая запись не затирала предыдущую, а записывалась на строку ниже..

ПРИМЕР РАБОТЫ С ФОРМАМИ

Создать приложение, которое позволит выбрать несколько чисел, выводимых в списке.

  1. Создайте форму изображенную на рисунке

В группе Операция следует установить один из переключателей: Сумма, Произведение или Среднее, чтобы указать, какая операция будет выполняться над выбранными числами. Нажатие кнопки Вычислить должно привести к выполнению операции и выводу результата в поле Результат.

  1. На листе модуля введите следующую программу.

  1. Private Sub CommandButton1_Click()

  2. Dim i As Integer

  3. Dim n As Integer

  4. Dim Сумма As Double

  5. Dim Произведение As Double

  6. Dim Среднее As Double

  7. Dim Результат As Double

  8. If OptionButton1.Value = True Then

  9. Сумма = 0

  10. With ListBox1

  11. For i = 0 To .ListCount - 1

  12. If .Selected(i) = True Then

  13. Сумма = Сумма + .List(i)

  14. End If

  15. Next i

  16. End With

  17. Результат = Сумма

  18. End If

  19. If OptionButton2.Value = True Then

  20. Произведение = 1

  21. With ListBox1

  22. For i = 0 To .ListCount - 1

  23. If .Selected(i) = True Then

  24. Произведение = Произведение * .List(i)

  25. End If

  26. Next i

  27. End With

  28. Результат = Произведение

  29. End If

  30. If OptionButton3.Value = True Then

  31. Среднее = 0

  32. n = 0

  33. With ListBox1

  34. For i = 0 To .ListCount - 1

  35. If .Selected(i) = True Then

  36. n = n + 1

  37. Среднее = Среднее + .List(i)

  38. End If

  39. Next i

  40. End With

  41. Результат = Среднее / n

  42. End If

  43. TextBox1.Text = CStr(Format(Результат, "Fixed"))

  44. End Sub

  45. Private Sub CommandButton2_Click()

  46. UserForm1.Hide

  47. End Sub

  48. Private Sub Frame1_Click()

  49. End Sub

  50. Private Sub ListBox1_Click()

  51. End Sub

  52. Private Sub UserForm_Initialize()

  53. With ListBox1

  54. .List = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)

  55. .ListIndex = 0

  56. .MultiSelect = fmMultiSelectMulti

  57. End With

  58. TextBox1.Enabled = False

  59. End Sub

  60. Private Sub UserForm_Click()

  61. End Sub

Контрольные вопросы

1. Определите понятие объекта для VBA.

2. Объясните различие между понятиями свойства и методы объекта.

3. Какие из свойств объектов можно не указывать?

4. Опишите параметры, которые могут указываться для метода сохранения файла.

5. Опишите инструкцию With.

6. Опишите отличия методов Save и SaveAs.

7. Можно ли записать макрос, с помощью которого можно выполнить сохранение рабочей книги, закрытие рабочей книги и закрытие приложения.

8. Раскройте понятие «форма»

9. Какова структура процедуры в VBA?

Библиографический список

  1. В.Е. Торчинский, В.Д. Тутарова, А.Н. Калитаев, Е.А. Ильина Практикум по программированию на языке С++: учебное пособие. – Магнитогорск: МГТУ, 2009 –108 с.

  2. О.С. Логунова, Е.А. Ильина, А.А. Стороженко, Ю.Б. Кухта, М.Н. Егорова, С.М. Логунов Практикум по информатике для программистов: учебное пособие. – Магнитогорск: МГТУ, 2007 –301с.

  3. Н.Б. Культин Visual Basic. Освой на примерах. – СПб.: БХВ-Петербург, 2004.–288с.

  4. И.Н Серебренникова, Г.М. Коринченко, Т.Н. Носова, Л.Л. Демиденко Решение задач в среде VBA: учебное пособие. – Магнитогорск: МГТУ, 2007 –162с.

  5. Электронное пособие по формам в VBA.