Реферат по предмету "Информатика, программирование"


Разработка приложения средствами VBA

Федеральноеагентство по образованию и науки
Кузнецкийинститут информационных и управленческих технологий
(филиал ПГУ)
Курсоваяработа
 
По дисциплине: Вычислительная техника ипрограммирование
Тема:Разработка приложения средствами VBA
Кузнецк 2008 г.

СодержаниеВведение1. Анализ задания2. Разработка интерфейса программы3. Разработка процедур3.1 Функциональное назначение процедур3.2 Описание процедур
4. Тестирование и отладка программы
Заключение
Список литературы
ВведениеVisual Basic forApplication (VBA) — объектно-ориентированный язык программирования(ООП), который позволяет создавать приложения (проекты) с развитым визуальныминтерфейсом. ООП можно описать как методику анализа, проектирования и написанияприложений, манипулируя объектами.
Языкбыл разработан в середине 1960-х годов профессорами Дартмутского колледжаДжоном Кемени и Томасом Курцом. Бейсик сравнительно несложен для изучения иподходит для разработки коротких и простых программ. В 1970-х годах он завоевалвсеобщее признание вследствие своей компактности и пригодности для первыхперсональных компьютеров с их ограниченным объемом памяти.
Приложение(проект) может включать модули, формы и связанные с приложением объекты,относящиеся к некоторому документу. Причем проект сохраняется вместе с самимдокументом. Модуль VBA содержитисходный код макроса, или программы, создаваемой пользователем.
Каждыйдокумент Word (или шаблон документа) можетсодержать один или несколько модулей, одну или несколько пользовательских форм,а может и не содержать никаких модулей и форм.
В VBA создание, редактирование, отладка изапуск на выполнение программ и макросов осуществляется средствамиинтегрированной среды разработки (средствами редактора VB). Чтобы перейти в интегрированную среду разработки из любогоприложения MS Office, достаточно нажать комбинацию клавиш Alt+F11  или выполнить команду
Сервис/Макрос/Редактор Visual Basic (Tools/ Macros /Visual Basic Editor).

/>/>/>/>1. Анализ задания
Создаем проект, состоящийиз нескольких частей:
ü  Документа ThisDocument. В нём будет прописан код для создания панели инструментов;
ü  программного модуля Module1, содержащего код процедур;
ü  пользовательской формы UserForm1, содержащей сообщение о разработчике проекта;
ü  пользовательской формы UserForm2, содержащей задание, выполняемое программой в UserForm3;
ü  пользовательской формы UserForm3, позволяющей решить задачу.
По заданию необходимо разработать приложение для созданияследующих функций:
1.  Автоматизировать работу с текстом:
2.  Составить алгоритм решения задачи: сколькоамёб будет через 3, 6, 9, 12,… 24 часа, если каждые 3 часа амёба делится на 2клетки.
3.  Вывести справку о разработчикепрограммы.
Для работы с текстомнеобходимо создать модуль, где будет прописано:
·  Открытие текстового документа;
·  Выделение первого абзаца;
·  Вырезание первого абзаца;
·  Вставка вырезанного абзаца в конецдокумента;
·  Форматирование вставленного абзаца;
·  Добавление границы к вставленномуабзацу;
·  Вывод формы «Задание»;
·  Вывод формы «Справка о разработчике».
Для вывода сведений о разработчике программы будет созданаформа.
Курсовая работа будет организована с помощью самостоятельно разработаннойпанели инструментов, при помощи которой будет происходить вызов всех процедур программыи форм.
/>/>/>/>2. Разработка интерфейса программы
Курсовая работареализована при помощи самостоятельно разработанной панели инструментов. Вданном проекте панель инструментов имеет 6 кнопок (см. Приложение А, рисунок1).
Кнопка «Открыть» – служитдля открытия документа с текстом по заданному пути.
Кнопка со списком«Перемещение»:
— Кнопка «Выделить» – приеё нажатии выделяется первый абзац документа.
— Кнопка «Вырезать» –вырезает выделенный абзац в Буфер обмена.
— Кнопка «Вставить» – вставляетабзац из Буфера обмена в конец документа с текстом.
Кнопка «Форматирование» –при нажатии этой кнопки к абзацу применяется прописанное в модулеформатирование.
Кнопка «Граница» –добавляет верхнюю, нижнюю, правую и левую границы к абзацу.
Кнопка «Задание» — вызывает форму для реализации решения задачи.
Кнопка с рисунком – при еёнажатии выводится сообщение о разработчике.
Базисом для созданияграфического интерфейса разрабатываемого проекта является форма. Новая формадобавляется в проект командой Insert– UserForm. На форме размещаются необходимыеэлементы управления. Основные элементы управления, доступные разработчику,размещены на панели инструментов «ToolBox», которая появляется, если нажата кнопка /> на панели инструментовредактора. Управляющие элементы имеют различное назначение:
§  Label – надпись, используется для выводаданных
§  TextBox – текстовое поле ввода
§  ComboBox – поле со списком
§  ListBox – окно списка
§  CheckBox — флажок
§  OptionsButton – переключатель
§  Frame – рамка
§  CommandButton –кнопка
§  Image – рисунок и т.д.
Интерфейс данного проектавключает в себя форму для вывода справки о разработчике проекта форму длявывода текста задания. Первая форма имеет имя «Справка о разработчике», вторая– «Задача». Форма «Справка о разработчике» содержит четыре поля Label (см. Приложение В, рисунок 2).Форма «Задача» имеет одно поле Label(см. Приложение В, рисунок 3). Для каждого элемента изменили свойство Caption (Заголовок) – Справка о разработчике иPicture (Картинка) – выбрали из коллекциикартинок, хранящейся на жёстком диске. В окне свойств Font для элементов изменили шрифт (Font) – на Courier New, размер – на 12 или 15 и тип шрифта – полужирный.
Для выполнения второгозадания работы добавляем в проект третью пользовательскую форму. Поместили наформу:
o  надпись, у которой изменили свойства:Caption – Label1 на «Введите начальное количество амёб», BackColor, Font – на Courier12пт.;
o  три текстовых поля TextBox; у них изменили свойство BackColor на оранжевый, Font на Tahoma;
o  кнопку CommandButton, при этом в окне свойств изменили:свойство Caption: CommandButton1 на «Результат», цвет (BackColor) на тёмно-оранжевый, свойство Font на Courier, полужирный, размер — 10пт.).
o  кнопку CommandButton, при этом в окне свойств изменили:свойство Caption: CommandButton2 на «Справка о разработчике», цвет (BackColor) на тёмно-оранжевый, свойство Font на Courier, полужирный, размер — 10пт.).
o  кнопку CommandButton, при этом в окне свойств изменили:свойство Caption: CommandButton1 на «Задача», цвет (BackColor) на тёмно-оранжевый, свойство Font на Courier, полужирный, размер — 10пт.).
В окне свойства Picture поменяли фон всей формы на рисунок (см.Приложение В, рисунок 1).
/>/>/>/>3. Разработка процедур/>/>/>/>3.1 Функциональное назначение процедур
Проект состоит из: 1)документа ThisDocument;
2) программного модуля Module1;
3) пользовательских форм UserForm1,UserForm2 иДеление_амёбы.
Программа открывающегосядокумента ThisDocumentсодержит процедуру Document_Open() –процедура, которая выполняется при открытии документа, и в которой прописан коддля создания панели инструментов(Application.CommandBars.Add(Name:=«Работа с текстом»,Position:=msoBarTop, menubar:=False, temporary:=True)). Также в ThisDocumentпрописаны коды для создания кнопокпанели инструментов «Работа с текстом».
Программный модуль Module1 содержит процедуры:
§ Кнопка1() – открытиедокумента по имени файла (Set WorkDoc = Documents.Open(FileName:=«A:\Моя курсовая работа\ Землетрясения.doc»)
Кнопка со списком,включающая в себя: — Кнопку2() – выделение первого абзаца после заголовка(ActiveDocument.Paragraphs(2).Range.Select) — Кнопку3() – вырезание первогоабзаца (ActiveDocument. Paragraphs (2).Range.Cut) — Кнопку4() – вставкавырезанного абзаца (ActiveDocument. Paragraphs(4).Range.Paste)
§  Кнопка5() – форматированиевставленного абзаца (Selection.Font)
§  Кнопка6() – добавление границы кпоследнему абзацу (ActiveDocument.Paragraphs(4).Borders(wdBorderBottom))
§  Кнопка7() – процедура вывода формы«Деление амёбы» для выполнения задания (Деление_амёбы.Show)
§  Кнопка8() – процедура вызова формы «Справкао разработчике» (см. Приложение С, Листинг 2).
/>/>/>/>3.2 Описание процедур
ThisDocument( Листинг программы см. ПриложениеС, Листинг 1):
Для создания новой панелиинструментов скрыли следующие панели инструментов: Стандартная (Standard), Форматирование (Formatting) и Рисование (Drawing) с помощью свойства Visible (=False).
Добавили новую панель припомощи функции Add, устанавливаяпри этом некоторые свойства: Name:= «Работа с текстом», Position:=msoBarTop, menubar:=False,temporary:=True). Visible= True.
Добавили Кнопку1 спомощью функции Add, установили еётип (Type:=msoControlButton, ID:=1) и прописали свойства (.Caption ‘заголовок’= «Открыть»; .Style ‘стиль’= msoButtonCaption; .TooltipText ‘текстподсказки’= «Открытие текстового документа»; .OnAction =«Кнопка1»).
Добавили кнопку сраскрывающимся списком с помощью функции Add, установили её тип (Type:=msoControlPopup), свойство Caption= “Перемещение” и функцию Controls. В список добавили: — Кнопку2 с помощью функции Add, установили её тип(Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Выделить»; .Style = msoButtonCaption; .OnAction =«Кнопка2»). — Кнопку3 с помощью функции Add, установили её тип(Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Вырезать»; .Style = msoButtonCaption; .OnAction =«Кнопка3»). — Кнопку4 с помощью функции Add, установили её тип(Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Вставить»; .Style = msoButtonCaption; .OnAction =«Кнопка4»).
Добавили Кнопку5 спомощью функции Add, установили еётип (Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Форматирование»; .Style = msoButtonCaption; .TooltipText =«Форматирование последнего абзаца»; .OnAction = «Кнопка5»).
Добавили Кнопку6 спомощью функции Add, установили еётип (Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Граница»; .Style = msoButtonCaption; .TooltipText = «Добавлениеграницы»; .OnAction = «Кнопка6»).
Добавили Кнопку7 спомощью функции Add, установили еётип (Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Задание»; .Style = msoButtonCaption; .TooltipText = «Выполнениезадачи»; .OnAction = «Кнопка7»).
Добавили Кнопку8 спомощью функции Add, установили еётип (Type:=msoControlButton, ID:=1) и прописали свойства (.Caption =«Справка»; .Style = msoButtonCaption; .TooltipText =«Справка»; .OnAction = «Кнопка8»).
Модуль ( Листинг программы см. Приложение С,рисунок 2):
Для Кнопки1 с помощьюоператора описания Dim обозначили тип переменной WorkDoc – Document и прописалипуть документа для открытия:
'Открытие документа поимени файла
Dim WorkDoc As Document
Set WorkDoc =Documents.Open(FileName:=«A:\Моякурсовая работа\Землетрясения.doc»).
Для Кнопки2 описалипроцедуру для выделения первого абзаца после заголовка:
ActiveDocument.Paragraphs(2).Range.Select
WithSelection.Font
.Name =«Times New Roman»
.Size = 14
End With
Для Кнопки3 описалипроцедуру для вырезания первого абзаца документа:
ActiveDocument.Paragraphs(2).Range.Cut
Для Кнопки4 описали процедурудля вставки из Буфера обмена вырезанного фрагмента:
ActiveDocument.Paragraphs(4).Range.Paste
Кнопка5 содержит в себепроцедуру форматирования вставленного в конец документа абзаца:
ActiveDocument.Paragraphs(4).Range.Select
WithSelection.Font
.Name = «CourierNew»
.Italic =wdBold ‘полужирный’
.Size = 16
.Color =wdColorLightBlue ‘голубой’
End With
Для Кнопки6 описалипроцедуру для добавления границы к вставленному абзацу:
ActiveDocument.Paragraphs(4).Range.Select
With ActiveDocument.Paragraphs(4).Borders(wdBorderBottom) ‘нижняя’ .LineStyle = wdLineStyleDouble ‘двойная линия’ .LineWidth = wdLineWidth025pt ‘толщина линии’ End With
WithActiveDocument.Paragraphs(4).Borders(wdBorderLeft) ‘левая’ .LineStyle = wdLineStyleDouble .LineWidth= wdLineWidth025pt
End With
WithActiveDocument.Paragraphs(4).Borders(wdBorderRight) ‘правая’ .LineStyle = wdLineStyleDouble .LineWidth= wdLineWidth025pt
End With
WithActiveDocument.Paragraphs(4).Borders(wdBorderTop) ‘верхняя’ .LineStyle = wdLineStyleDouble .LineWidth= wdLineWidth025pt
End With
Кнопка 7 – это кнопкавызова формы «Задание»:
Деление_амёбы.Show.
Кнопка8 – это кнопкавывода формы «Справка о разработчике»
UserForm1.Show.

Пользовательскаяформа Деление_амёбы ( Листинг программы см.Приложение С, Листинг 3):
Задача проекта решается заданиемцикла с параметром (цикл со счётчиком), который служит для организации циклов сзаранее известным числом повторений.
С помощью оператораописания Dim объявляем тип переменной Х –Integer, result – Double,str и str1 – String.
В поле ввода TextBox1.Text вводится первоначальное количество амёб.
При нажатии кнопки «Результат»появляются надписи Label2 «Время вчасах» и Label3 «Количество амёб», в поле ввода TextBox2 выводится заданная строка созначениями времени, в поле ввода TextBox3выводятся результаты вычислений.
Если в текстовое поле TextBox1 не введено значение количестваамёб, то в поле TextBox1ставится нулевое значение, а в поле TextBox2 выводится сообщение «амебы невведены», а в поле TextBox3 выводится «введите начальное кол-во амеб» (см.Приложение B, Рисунок6).

4. Тестирование иотладка программы
 
При запуске программы«Деление_амёбы» в активном документе отображается созданная для выполнениязадачи форма (см.Приложение B, Рисунок 4).
В первое поле ввода вводитсязначение первоначального количества амёб и при нажатии кнопки «Результат» вовтором поле ввода отображается заданная строка со значениями времени, а втретьем поле отображаются результаты вычисления деления введённого количестваамёб по прошествии этих значений времени (см. Приложение B, Рисунок 5).
При нажатии кнопки«Задача» открывается форма UserForm2 с текстом задания (см. Приложение B, Рисунок 3).
При нажатии кнопки«Справка о разработчике» выводится форма со сведениями о разработчике проекта (см. Приложение B, Рисунок 2).

Заключение
 
В результате работы надкурсовым проектом были разработаны:
— новая панель управленияс именем «Работа с текстом»;
— модуль программы;
— пользовательская формадля решения задачи;
— пользовательская форма«Задача»;
— пользовательская форма«Справка о разработчике».
Была автоматизированаработа с текстом:
— открытие документа стекстом;
— перемещение первогоабзаца в конец документа;
— форматированиеперемещённого абзаца;
— добавление границы кабзацу.
Составили алгоритм решениязадачи: одноклеточная амёба каждые 3 часа делится на 2 клетки. Определить,сколько амёб будет через 3, 6, 9, 12, … 24 часа.
Вывели справку оразработчике проекта.

Список литературы
 
1. Горных Е. Н. –Учебное пособие «Программирование на VBA» 2003.
2. Кузьменко В.Г. –«Программирование на VBA»2003.
3. Лабораторныеработы по дисциплине «ВТ и программирование» (методические указания клабораторным работам).


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

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Современное состояние качества воды р.Оби в пределах Тюменской области
Реферат Взаємозвязок школи та сімї у вихованні учнів початкових класів
Реферат Анализ системы управления организацией на примере ООО УАЗ Автотранс
Реферат Социально-экономические предпосылки градостроительного развития
Реферат Вывод на экран текущего каталога в графическом режиме (со скроллингом)
Реферат Андрей Болконский - Герой романа Война и мир
Реферат Germany Ww1 Responsible Essay Research Paper Was
Реферат Организация выставки Bath and SPA 2009
Реферат Прикладное плавание. Оказание первой помощи пострадавшему на воде
Реферат Jerome Salinger Essay Research Paper Born
Реферат Музеи эстонской республики
Реферат Некоторые вопросы суммированного учета рабочего времени
Реферат Перевозки грузов автомобильным транспортом
Реферат Виды хлеба Организация хранения лука Характеристика кондитерских изделий и кофе
Реферат Діяльність українських православних місіонерів у XVIII столітті