Разработка программы в системе Microsoft Office Access на языке MVB

Введение



Задачей данной курсовой работы является написание программы в среде Microsoft Access на языке Microsoft Visual Basic, решающую следующую задачу: перенесение данных из таблицы Word в таблицу базы данных. 

Если говорить о среде написания программ для решения задач - Microsoft Visual Basic for Application – то это сочетание одного из самых простых языков программирования и всех вычислительных возможностей такой многогранной системы, как Access. С помощью VBA можно легко и быстро создавать разнообразные приложения даже не являясь специалистом в области программирования. VBA содержит относительно мощную графическую среду, позволяющую наглядно конструировать экранные формы и управляющие элементы. В общем Visual Basic for Application позволяет с легкостью решать многие задачи.

VBA встроен в любое приложение Microsoft Office, поэтому, нет необходимости устанавливать дополнительные пакеты прикладных программ. Тексты программ сохраняются в соответствующих приложениях, и, следовательно, их можно переносить с одного компьютера на другой, не задумываясь о необходимости создания исполняемых файлов, достаточно наличия на компьютерах пакета Microsoft Office. 

Visual Basic считается хорошим средством быстрой разработки прототипов программы, для разработки приложений баз данных и вообще для компонентного способа создания программ, работающих под управлением операционных систем семейства Microsoft Windows.

Название Visual Basic говорит само за себя. Visual Basic, в отличие от традиционных систем программирования, представляет совершенно иной стиль программирования. Уже по слову "Visual" можно догадаться, что в Visual Basic реализован визуальный стиль программирования. Здесь мы даже не программируем, а проектируем приложение. Наша первая задача при этом - создать рабочую среду, прежде чем начать набирать первую строку кода.

Слово Basic в названии указывает на то, что синтаксис программ и операторы опираются на язык высокого уровня Basic (Beginners Atlpurpose Symbolic Instruction Code - многоцелевой код символических команд для начинающих), но заметно от него отличается.


1. Постановка задачи



Создать в базе данных Microsoft Office Access таблицу «Закупаемые компоненты» в соответствии с заданием

Разработать форму для работы с таблицей «Закупаемые компоненты»

Написать программу для расчета операций, указанных в задании



2. Описание алгоритма решения задачи в виде текстового описания



Создать таблицу «Закупаемые компоненты» при помощи Конструктора и задать имя, тип, размер, формат каждого поля таблицы

Создать при помощи Мастера форму с полями для ввода информации 

Поместить на форме кнопку «Расчет» 

Щелкнув правой кнопкой мыши по кнопке «Расчет», выбрать в контекстном меню строку Обработка событий

В открывшемся окне Microsoft Visual Basic написать программу для расчета незаполненных полей 



3. Описание базы данных (структура таблиц, схема)



Таблица 1 – Описание структуры таблицы «Закупаемые компоненты»

Имя поля

Тип данных

Размер поля

Индексированное поле

Склад

Числовой

Длинное целое

Да(Совпадения допускаются)

Изделие

Числовой

Действительное

Нет

Описание

Текстовой

50

Нет

Наличный запас

Числовой

Действительное

Нет

Задержанный запас

Числовой

Действительное

Нет

Заказанный запас

Числовой

Длинное целое 

Нет

Распределённый запас

Числовой

Длинное целое

Нет

Свободный запас

Числовой

Действительное

Нет

Единицы

Текстовой

50

Нет





Рисунок 1 – Таблица «Закупаемые компоненты» в режиме Конструктор





Рисунок 2– Таблица «Закупаемые компоненты



Таблица 2 – Описание структуры таблицы «Склад»

Имя поля

Тип данных

Размер поля

Индексированное поле

Склад

Числовой

Длинное целое

Да(Совпадения не допускаются)

Тип склада

Текстовой

50

Нет

Кластер

Текстовой

50

Нет




Рисунок 3 – Таблица «Склад» в режиме Конструктор





Рисунок 4– Таблица «Склад»





Рисунок 5 – Запрос в режиме конструктора





Рисунок 6 – Запрос в режиме SQL


4. Копии с экрана форм для работы с базой данных при разработке их в конструкторе





Рисунок 7 – Экранная форма в режиме конструктор





Рисунок 8 – Экранная форма



5. Текст разработанной программы



Private Sub Кн1_Click()

On Error GoTo Err_Кн1_Click

Dim rs As New ADODB.Recordset

s_sql = "SELECT [Закупаемые компоненты].* FROM [Закупаемые компоненты]"

rs.Open s_sql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic

With rs

.MoveFirst

Do Until .EOF

.Fields("Свободный запас") = .Fields("Наличный запас") - .Fields("Задержанный запас") - .Fields("Заказанный запас") - .Fields("Распределённый запас")

.Update

.MoveNext

Loop

Me.Refresh

Exit_Кн1_Click:

Exit Sub

Err_Кн1_Click:

MsgBox Err.Description

Resume Exit_Кн1_Click

End With

End Sub



6. Подробное описание работы программы 



Option Compare Database

Private Sub Кнопка1_Click() 'процедура обработки события

'On Error GoTo Err_Кн1_Click 'Значение ошибки

On Error Resume Next 'автоматическое завершение программы при возникновении ошибки будет предотвращено и появится возможность выполнить некоторые дополнительные действия

Dim rs As New ADODB.Recordset 'создается таблица, для каждого столбца которой определяется тип данных и значения в этом столбце должны соответствовать этому типу данных.

s_sql = "SELECT Spect.* FROM Spect" 

rs.Open s_sql, CurrentProject.Connection, adOpenDynamic, adLockOptimistic 'создается динамический с оптимистической блокировкой записей

With rs 'Выполняет группу операторов для объекта Recordset

Do Until .EOF 'повторяет блок команд, пока условие не станет верным

.Fields(0) = fld(0) 'код специальности

.Fields(1) = fld(1) 'наименование специальности

.Update 'для сохранения изменений и добавления записи в объект Recordset

.MoveNext 'перемещает текущую позицию в объекте Recordset на следующую запись

Next 'выход из цикла

End With 

Me.Refresh 'Обновляет объекты в семействе в соответствии с текущими изменениями в схеме базы данных.

Exit_Кн1_Click: 'конец обработки события

Exit Sub 'конец объявления процедуры

Err_Кн1_Click: 

MsgBox Err.Description 'описание ошибки

Resume Exit_Кн1_Click 'продолжает выполнение программы после завершения процедуры обработчика ошибок

End Sub 'конец обработки события


7. Примеры работы программы 





Рисунок 9 – Экранная форма до выполнения расчета





Рисунок 10 – Экранная форма после выполнения расчета


Заключение

база данные таблица word

В процессе выполнения данной курсовой работы была написана программа в среде Microsoft Access на языке Microsoft Visual Basic, решающая следующую задачу: перенесение данных из таблицы Word в таблицу базы данных.




Список литературы



1. А.С. Грошев Информатика: Учебник для вузов. – Архангельск, 2009.

2. А.С. Грошев Программирование на VBS. Методические указания к выполнению лабораторных работ. - Архангельск, 2009.