Студопедия — Упражнение 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; просмотров: 589. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Сравнительно-исторический метод в языкознании сравнительно-исторический метод в языкознании является одним из основных и представляет собой совокупность приёмов...

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

Конституционно-правовые нормы, их особенности и виды Характеристика отрасли права немыслима без уяснения особенностей составляющих ее норм...

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

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