Смекни!
smekni.com

Основы программирования на VBA модель объектов Exel (стр. 1 из 3)

Содержание

Введение

1. Проектирование программного модуля

1.1 Математическое описание задачи

1.2 Разработка схемы алгоритма и ее описание

2. Реализация программного модуля

2.1 Код программы

2.2 Описание использованных операторов

3. Тестирование программного модуля

Заключение

Список использованных источников

Приложения


Введение

Программа MS Excel, являясь лидером на рынке программ обработки электронных таблиц, определяет тенденции развития в этой области. Вплоть до версии 4.0 программа Excel представляла собой фактический стандарт с точки зрения функциональных возможностей и удобства работы. Теперь на рынке появилась версия Excel XP в пакете MS Office XP, которая содержит много улучшений и приятных неожиданностей.

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

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

Описанные до сих пор новшества касаются в основном комфорта в работе и быстрого освоения программы. Одним из важнейших функциональных расширений программы, предназначенным для профессионалов, является встроенная в Excel Среда программирования Visual Basic (VBA) для решения прикладных задач. Благодаря VBA фирме Microsoft удалось не только расширить возможности языка макрокоманд Excel 4.0, но и ввести новый уровень прикладного программирования, поскольку VBA позволяет создавать полноценные прикладные пакеты, которые по своим функциям выходят далеко за рамки обработки электронных таблиц.

Начиная с версии 5.0, в программу Excel включен специальный язык программирования, который получил название Visual Basic for Applications (VBA).

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

Разработка языка программирования VBA, встраиваемого в прикладные системы, является одним из стратегических направлений компании Microsoft. Этот язык уже интегрирован в такие программы, как Word, PowerPoint, Access пакета Microsoft Office 97. VBA позволяет создавать программные модули, меню, диалоговые окна и другие ресурсы в среде Windows. Благодаря этому языку появляется возможность значительно расширить набор функций в Excel, а также создавать функции, значения которых зависят от некоторых условий и событий. В принципе, можно полностью перепрограммировать все функции программы Excel, если в этом появилась необходимость.

Целью контрольной работы на тему «Основы программирования на VBA: Модель объектов Exel» является разработка и реализация программы расчета заданной функции на языке программирования VBA, оформление пояснительной записки.

В разделе «Проектирование программного модуля» пункт «Математическое описание задачи» описана математическая модель, параметры и характеристики задачи, а также приведены критерии оценки эффективности созданного модуля.

В разделе «Проектирование программного модуля» пункт «Разработка схемы алгоритма и ее описание» приведена схема алгоритма с учетом возможностей языка VBA.

В разделе «Реализация программного модуля» пункт «Код программы» разрабатывается исходный код модуля с пользовательским интерфейсом.

В разделе «Реализация программного модуля» пункт «Описание использованных операторов» приводится перечень операторов, использованных в программе, с кратким описанием каждого оператора.

В разделе «Тестирование программного модуля» проводится описание запуска тестового примера.

Приложение «Текст программы» содержит распечатку процедур основного модуля программы.

Приложение «Тестовый пример» содержит экранную копию в момент тестирования программы.


1. Проектирование программного модуля

1.1 Математическое описание задачи

Целью данной контрольной работы является проектирование системы, оптимальным образом ориентированной на решение поставленной прикладной задачи. В результате анализа математической модели системы необходимо определить исходные данные для синтеза системы, которые включают в себя:

· Функцию системы, определенную номенклатурой прикладной задачи;

· Параметры и характеристики системы с областью их действия и ограничениями на них;

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

Номенклатурой, в нашем случае это задание к контрольной работе, определяется следующая функция системы:

O_stoim = Potr / 100 * Zena * O_prob, (1.1)

где O_stoim – общая стоимость, руб;

Potr – потребление бензина на 100 км, л;

Zena – цена 1-го литра бензина, руб;

O_prob – общий пробег, км.

Параметры и характеристики системы представлены в таблице 1.1

Таблица 1.1 Параметры и характеристики системы

Имя Тип Ограничение Роль в модуле
N_auto String 2^16 символов параметр
M_auto String 2^16 символов параметр
M_benz String 2^16 символов параметр
q String 2^16 символов характеристика
B String 2^16 символов характеристика
E String 2^16 символов характеристика
O_prob single -3,402823Е38.. 3,402823Е38 параметр
Potr single -3,402823Е38.. 3,402823Е38 параметр
Zena single -3,402823Е38.. 3,402823Е38 параметр
O_stoim single -3,402823Е38.. 3,402823Е38 параметр

Тип параметров и характеристик определяется исходя из требований математической функции и возможностей языка программирования. Например, характеристика q используется только в расчете, пользователь не должен ее изменять, в отличие от O_prob, Potr и др. Ограничение на переменные определяются исходя из требований функции к ним и возможностей языка (зависит от количества памяти, выделенной под данную переменную).

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

· Правильность расчета;

· Возможность ввода исходных данных в любое время работы программы, кроме того момента, когда осуществляется расчет;

· Обязательное отображение результатов расчета на рабочем листе и на пользовательской форме;

· Использование удобного пользовательского интерфейса.

Это основные критерии оценки эффективности функционирования системы, которые позволят проверить работоспособность и оптимальность созданного продукта. Проверка описана ниже в пункте «Тестирование программного модуля»


1.2 Разработка схемы алгоритма и ее описание

Используя генератор пользовательских форм можно реализовать удобный интерфейс ввода и вывода данных. Это несложно сделать, используя объект VBA – TextBox. По условию задачи программа должна выводить результаты на рабочую страницу. Подпрограммы расчета будут запускаться по кнопке на пользовательской форме (объект CommandButton).

Итак, исходя из возможностей языка программирования, можно составить блок-схему, представленную на рисунке 1.1

Рисунок 1.1 Блок-схема алгоритма

1 - Ручной ввод пользователем исходных данных - N_auto, M_auto, M_benz, O_prob, Potr, Zena ; 2 – Машинная операция расчета результата по заданной формуле; 3 – Вывод результата на экран.


2. Реализация программного модуля

2.1 Код программы

Особенностью языка VBA является то, что программный модуль запускается по какому-либо событию, будь-то ввод с клавиатуры пользователем строки, нажатие на определенную кнопку клавиатуры, перемещение мыши, нажатие кнопки мыши и т.п. Разрабатываемый программный модуль будет срабатывать, когда пользователь нажимает определенную кнопку на пользовательском интерфейсе. По условию задачи результаты должны выводиться на рабочий лист, эта процедура будет запускаться по событию: CommandButton1_Click. Основой программы является пользовательская форма, на которой находятся объекты, необходимые для работы системы и «общения» с пользователем. Разработанная форма представлена на рисунке 1.2

Ввод исходных данных для пользователя осуществляется с помощью объектов VBA – TextBox. Шесть этих объектов позволяют ввести значения N_auto, M_auto, M_benz, O_prob, Potr, Zena.

Расчет результатов осуществляется с помощью объекта-кнопки CommandButton, описанного выше. Остальные объекты на форме – типа «label» и носят чисто информативный характер. Также используется процедура UserForm_Initialize, которая вызывается при инициализации формы и формирует заголовки в таблице. Программный код представлен в Приложении А.


Рисунок 1.2 Пользовательская форма

2.2 Описание использованных операторов

Объявление переменных:

Public N_auto, M_auto, M_benz, q, B, E As String

Public O_prob, Potr, Zena, O_stoim As Single

Каждая процедура в VBA начинается с оператора объявления процедуры и заканчивается оператором End Sub. В разрабатываемом программном модуле описано три процедуры:

Private Sub CommandButton1_Click()

Private Sub CommandButton2_Click()

Private Sub CommandButton3_Click()

Private Sub UserForm_Initialize()

Ключевое слово Private используется для того, чтобы сделать процедуру частной для модуля.

Основой всех вычислений в VBA является оператор, поэтому он наиболее часто встречается в программном коде, например: