Студопедия — Упражнение 5. Разработка сложного приложения, которое создает базу данных для регистрации вкладов
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Упражнение 5. Разработка сложного приложения, которое создает базу данных для регистрации вкладов






 
 

1. В редакторе VBA разработать пользовательскую форму, показанную на рисунке 46.

Рисунок 46. Форма диалогового окна для программы регистрации вкладов

 

2. Элементам управления присвойте имена и свойства в соответствии таблицей 6.1.

 

Таблица 6.1

Элемент Имя Свойства События
Форма UserForm   1.Initialize 2.Устанавливает количество элементов в списке. 3.Присваивает значения элементам списка.
Форма Вклад Caption Прием вклада 4.Изменяет текст в строке заголовка приложения. 5.Закрывает сроку формул. 6.Устанавливает всплывающие подсказки. 7.Формирует заголовки столбцов таблицы, обращаясь к специально созданной процедуре.
Кнопка Принять Caption Принять Click Вычисляет номер первой свободной строки. 1.Поверяет, введены ли данные в поля формы. 2.Записывает данные из элементов управления Формы в ячейки рабочего листа
Кнопка Отмена Caption Отмена Click 1.Вычисляет номер последней строки таблицы. 2. Удаляет содержимое из ячеек этой строки.
Кнопка Выход Caption Выход Click Завершает выполнение программы
Поле Фамилия    
Поле Сумма вклада    
Поле со списком Тип Вклада    
Переключатели Северное Центральное Восточное    
Поле Примечание    

 

3. Рабочему листу Excel c именем «Лист1» присвойте имя «Меню», а рабочему листу «Лист2» - «База».

4. На рабочем листе с именем «Меню» поместите элемент управления Кнопка панели элементов Visual Basic и поместите на ней надпись «Прием вклада». С помощью этой кнопки будет вызываться разрабатываемое диалоговое окно.

5. Для кнопки «Прием вклада» запишите код:

Private Sub CommandButton1_Click()

'Вызываем процедуру формирования заголовков БД

ЗаголовокРабочегоЛиста

End Sub

6. Для формирования заголовков столбцов базы данных создайте процедуру Sub пользователя, которая будет вызываться из процедуры обработки кнопки рабочего листа Прием вклада. Для этого выполните команду меню Visual Basic Вставка, Процедура и присвойте ей имя ЗагловокРабочегоЛиста. Процедура выполняет следующие действия:

· проверяет, заполнена ли первая строка – строка заголовков столбцов (по назначению ячейки А1), если заполнена, то не выполняет никаких действий, завершает работу и передает управление в точку вызова;

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

В окне редактирования кода введите текст программы этой процедуры:

Private Sub ЗаголовокРабочегоЛиста()

'Активизируем рабочий лист

Application.Worksheets(" База").Activate

'Проверяем, есть ли названия столбцов БД

With ActiveSheet

If.Range(" A1").Value = " Фамилия" Then

.Range(" A2").Select

Else

ActiveSheet.Cells.Clear

'Записываем названия столбцов

Range(" A1: E1").Value = Array(" Фамилия", " Тип", " Сумма", " Отделение", " Примечание")

'Фиксируем первую строку

.Range(" 2: 2").Select

ActiveWindow.FreezePanes = True

.Range(" A2").Select

'Вставляем комментарии

.Range(" A1").AddComment

.Range(" A1").Comment.Visible = False

.Range(" A1").Comment.Text Text: =" Фамилия клиента"

.Range(" B1").AddComment

.Range(" B1").Comment.Visible = False

.Range(" B1").Comment.Text Text: =" Тип вклада"

.Range(" C1").AddComment

.Range(" C1").Comment.Visible = False

.Range(" C1").Comment.Text Text: =" Сумма вклада"

.Range(" D1").AddComment

.Range(" D1").Comment.Visible = False

.Range(" D1").Comment.Text Text: =" Отделение банка"

End If

End With

'Вызываем элемент Форма с именем Вклад

Вклад.Show

End Sub

7. В процедуру обработки события Initialize формы введите код:

Private Sub UserForm_Initialize()

With Вклад

.Северное.Value = True

'Установим длину элемента Список

.ТипВклада.ListRows = 3

'Присвоим значения элементами списка

.ТипВклада.List = Array(" Срочный", " Депозит", " Текущий")

'Установим фокус элементу Кнопка с именем Принять

.Принять.SetFocus

End With

End Sub

8. В процедуру обработки события Initialize элемента Форма с именем «Вклад» запишите код:

Private Sub Вклад_Initialize()

'Изменим название в строке заголовка приложения

Application.Caption = " Регистрация. База данных Банк"

'Изменим название в строке заголовка

Application.DisplayFormulaBar = False

With Принять

.Default = True

'Установка всплывающей подсказки

.ControlTipText = " Ввод данных в базу данных"

End With

With Отмена

.Cancel = True

.ControlTipText = " Кнопка отмены"

End With

ЗаголовокРабочегоЛиста

End Sub

9. В процедуру обработки события Click элемента Кнопка с именем «Принять» введите код:

Private Sub Принять_Click()

“Декларадция переменных

Dim Фамилия As String

Dim ТипВклада As String

Dim СуммаВклада As Double

Dim Отделение As String

Dim Примечание As String

Dim НомерСтроки As Integer

'Вычисление номера первой свободной строки

НомерСтроки=_

Application.CountA (ActiveSheet.Columns(1)) + 1

With Вклад

If.Фамилия.Text = " " Then

MsgBox " Вы забыли указать фамилию", vbExclamation

Exit Sub

End If

If.ТипВклада.Value = " " Then

MsgBox " Вы забыли указать тип вклада", vbExclamation

Exit Sub

End If

TextBox1 =.Фамилия.Text

ТипВклада =.ТипВклада.Value

If.Северное.Value = True Then Отделение = " Северное"

If.Центральное.Value = True Then Отделение = " Центральное"

If.Восточное.Value = True Then Отделение = " Восточное"

If IsNumeric(.СуммаВклада.Text) = False Then

MsgBox " Введена неверная сумма", vbExclamation

Exit Sub

End If

СуммаВклада = CDbl(.СуммаВклада.Text)

Примечание =.Примечание.Text

End With

'Записываем данные в ячейки рабочего листа

With ActiveSheet

.Cells(НомерСтроки, 1).Value = Фамилия

.Cells(НомерСтроки, 2).Value = ТипВклада

.Cells(НомерСтроки, 3).Value = СуммаВклада

.Cells(НомерСтроки, 4).Value = Отделение

.Cells(НомерСтроки, 5).Value = Примечание

End With

End Sub

10. В процедуру обработки события Click элемента Кнопка с именем «Отмена» поместите код:

Private Sub Отмена_Click()

Dim НомерСтроки As Integer

" Вычисляем номер последней строки

НомерСтроки = Application.CountA(ActiveSheet.Columns(1))

'Удаляем содержимое ячеек строки

With ActiveSheet

.Cells(НомерСтроки, 1).Value = " "

.Cells(НомерСтроки, 2).Value = " "

.Cells(НомерСтроки, 3).Value = " "

.Cells(НомерСтроки, 4).Value = " "

.Cells(НомерСтроки, 5).Value = " "

End With

End Sub

11. В процедуру обработки события Click элемента Кнопка с именем «Выход» поместите код:

Private Sub Выход_Click()

'Активизируем рабочий лист с именем Меню

Sheets(" Меню").Activate

'Завершаем выполнение программы

End

End Sub

12.
 
 

Перейдите в приложение MS Excel, активизируйте рабочий лист Меню, изображенный на рисунке 47 и щелкните на кнопке «Прием вклада». Программа должна активизироваться, и на экране появиться созданное диалоговое окно (рисунок 46).

Рисунок 47. Законченный вид листа «Меню»

 

13. Отладьте и проверьте работу программы во всех режимах.

14. Сохраните проект.







Дата добавления: 2014-11-10; просмотров: 578. Нарушение авторских прав; Мы поможем в написании вашей работы!



Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

Педагогическая структура процесса социализации Характеризуя социализацию как педагогический процессе, следует рассмотреть ее основные компоненты: цель, содержание, средства, функции субъекта и объекта...

Типовые ситуационные задачи. Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической   Задача 1. Больной К., 38 лет, шахтер по профессии, во время планового медицинского осмотра предъявил жалобы на появление одышки при значительной физической нагрузке. Из медицинской книжки установлено, что он страдает врожденным пороком сердца....

Типовые ситуационные задачи. Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт. ст. Влияние психоэмоциональных факторов отсутствует. Колебаний АД практически нет. Головной боли нет. Нормализовать...

Подкожное введение сывороток по методу Безредки. С целью предупреждения развития анафилактического шока и других аллергических реак­ций при введении иммунных сывороток используют метод Безредки для определения реакции больного на введение сыворотки...

Принципы и методы управления в таможенных органах Под принципами управления понимаются идеи, правила, основные положения и нормы поведения, которыми руководствуются общие, частные и организационно-технологические принципы...

ПРОФЕССИОНАЛЬНОЕ САМОВОСПИТАНИЕ И САМООБРАЗОВАНИЕ ПЕДАГОГА Воспитывать сегодня подрастающее поколение на со­временном уровне требований общества нельзя без по­стоянного обновления и обогащения своего профессио­нального педагогического потенциала...

Studopedia.info - Студопедия - 2014-2024 год . (0.013 сек.) русская версия | украинская версия