Студопедия Главная Случайная страница Обратная связь

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

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




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


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


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


Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Тема: Составление цепи питания Цель: расширить знания о биотических факторах среды. Оборудование:гербарные растения...

В эволюции растений и животных. Цель: выявить ароморфозы и идиоадаптации у растений Цель: выявить ароморфозы и идиоадаптации у растений. Оборудование: гербарные растения, чучела хордовых (рыб, земноводных, птиц, пресмыкающихся, млекопитающих), коллекции насекомых, влажные препараты паразитических червей, мох, хвощ, папоротник...

Типовые примеры и методы их решения. Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно Пример 2.5.1. На вклад начисляются сложные проценты: а) ежегодно; б) ежеквартально; в) ежемесячно. Какова должна быть годовая номинальная процентная ставка...

Признаки классификации безопасности Можно выделить следующие признаки классификации безопасности. 1. По признаку масштабности принято различать следующие относительно самостоятельные геополитические уровни и виды безопасности. 1.1. Международная безопасность (глобальная и...

Прием и регистрация больных Пути госпитализации больных в стационар могут быть различны. В цен­тральное приемное отделение больные могут быть доставлены: 1) машиной скорой медицинской помощи в случае возникновения остро­го или обострения хронического заболевания...

ПУНКЦИЯ И КАТЕТЕРИЗАЦИЯ ПОДКЛЮЧИЧНОЙ ВЕНЫ   Пункцию и катетеризацию подключичной вены обычно производит хирург или анестезиолог, иногда — специально обученный терапевт...

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