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

Шаг 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.

46. Private Sub CommandButton2_Click()

47. UserForm1.Hide

48. End Sub

49.

50. Private Sub Frame1_Click()

51.

52. End Sub

53.

54. Private Sub ListBox1_Click()

55.

56. End Sub

57.

58. Private Sub UserForm_Initialize()

59. With ListBox1

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

61. .ListIndex = 0

62. .MultiSelect = fmMultiSelectMulti

63. End With

64. TextBox1.Enabled = False

65. End Sub

66.

67. Private Sub UserForm_Click()

68.

69. 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.