Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задания к лабораторным.doc
Скачиваний:
14
Добавлен:
20.06.2014
Размер:
329.22 Кб
Скачать

Министерство образования Российской Федерации

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра автоматизированных систем управления

РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ НА ЯЗЫКЕ VBA

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам

по курсу "Информационные технологии"

Составитель М.А. Махлышев

Утверждаю

Зав. кафедрой автоматизированных

Систем управления, д.т.н., профессор Л.А.Кузнецов

Липецк - 2004

Министерство образования Российской Федерации

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра автоматизированных систем управления

РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ НА ЯЗЫКЕ VBA

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам

по курсу "Информационные технологии"

Составитель М.А. Махлышев

Утверждается к печати Проректор по учебной работе

П.И.Внуков

Объем 1.0 п.л. «____»_______________2004г.

Тираж 100 экз.

Липецк - 2004

Министерство образования Российской Федерации

ЛИПЕЦКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ

Кафедра автоматизированных систем управления

РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ НА ЯЗЫКЕ VBA

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к лабораторным работам

по курсу "Информационные технологии"

Составитель М.А. Махлышев

Липецк - 2004

УДК 681.51

РАЗРАБОТКА ИНФОРМАЦИОННЫХ СИСТЕМ НА ЯЗЫКЕ VBA: Методические указания к лабораторным работам по курсу «Информационные технологии» / Липецкий государственный технический университет; Сост. М.А.Махлышев. Липецк, 2004. 16с.

Методические указания являются частью учебно-методического обеспечения дисциплины «Информационные технологии». Предназначены для студентов специальностей 220200, 351500.

Библиогр.: 3 назв.

Рецензент _____________

Лабораторная работа №1

«Создание простейшей программы на VBA. Автоматизация заполнения бланка финансового документа»

1. Цель работы

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

2. Теоретические сведения

В результате своей эволюции Visual Basic превратился в объектно-ориентированный язык программирования. Объекты - это естественные детали VBA-ландшафта. Посредством объектов можно доступ к функциональным возможностям того VBA-приложения, в котором происходит работа. Можно также получить доступ и к объектам из других приложений и даже создать свои собственные объекты.

С практической точки зрения, объект - это просто именованный элемент, имеющий

- свойства, т.е. установки, которые можно проверить или изменить;

Object.Property = PropertyValue

Range("A1").Value = "Пример"

- методы, т.е. действия, которые объект может выполнить, если про­грамма попросит его об этом;

Object.Method

Worksheets(1).Delete

- события, т.е. возможные для объекта ситуации, на которые он может ответить заранее предопределенными действиями.

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

Начать освоение понятия "объект" проще всего с примеров объектов, являющихся частями VBA-приложений и их документов. К объектам Excel относятся и ячейки, в которых хранятся данные и формулы, и именованные диапазоны ячеек, и диаграммы, украшающие рабочие листы, и сами рабочие листы, и целые рабочие книги. Имеющиеся в большинстве VBA-приложений меню и панели инструментов, так же, как и содержащиеся в них кнопки и пункты меню, являются объектами. Объекты VBA существуют в определенной иерархии, когда одни типы объектов содержат объекты других типов. Такие иерархии объектов называются объектными моделями.

В таблице 1 приведены основные объекты MS Excel.

Таблица 1

Основные объекты MS Excel

Объект

Семейство

Описание

Application

Активное приложение Microsoft Excel

Workbook

Workbooks

Семейство объектов Workbooks, каждый из которых представляет открытую рабочую книгу

Worksheet

Worksheets

Семейство объектов Worksheets, каждый из которых представляет рабочий лист в данной рабочей книге

Chart

Charts

Семейство объектов Charts, каждый из которых представляет Диаграмму в данной рабочей книге. Внедренной в рабочий лист диаграмме соответствует как объект Chart, так и объект ChartObject семейства ChartObjects

Name

Names

Семейство объектов Names, каждый из которых является именем объекта, например, именем диапазона

Window

Windows

Семейство объектов Windows, каждый из которых представляет собой окно рабочей книги

WorksheetFunction

Объект, являющийся контейнером для функций рабочего листа

Range

Диапазон ячеек.

Объект Range является одним из ключевых объектов VBA. Если в диапазоне указыва­ются только имена столбцов или строк, то объект Range задает диапазон, состоящий из указанных столбцов или строк. Например, Range("А:C") задает диапазон, состоящий из столбцов А, B и C, a Range("2:2") - из второй строки. Другим способом работы со строками и столбцами являются свойства рабочего листа Rows и Columns, возвращающие семейства строк и столбцов. Например, столбцом А является Columns(1), а второй строкой Rows(2).

Ячейка это частный случай диапазона, который состоит из единственной ячейки. Поэто­му, естественно, что объект Range позволяет работать как с диапазоном ячеек, так и с одной ячейкой. Альтернативным способом работы с ячейкой является свойство Cells объекта Worksheet. Например, ячейку А2 как объект можно описать двумя равносильными способами:

Range("A2") и Cells(1,2).

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

Range("А2:СЗ")

Range(Cells(1,2),Cells(3,3))

Диапазон так же, как и рабочий лист, обладает свойством Cells, которое, если используется без параметров, возвращает множество всех ячеек, входящих в диапазон. Если же оно используется с параметрами, то возвращает конкретную ячейку из диапазона. Например, в следующем примере значение 2 вводится в ячейку СЗ:

Range("В2:D4").Select

Selection.Cells(2,2).Value = 2

Структура среды разработки Visual Basic

Редактор Visual Basic активизируется командой Сервис | Макрос | Редактор Visual Basic или комбинации клавиш <Alt>+<F11>. Возвратиться из редактора Visual Basic в рабочую книгу можно: нажатием кнопки View Microsoft Excel панели инструментов Standard.

Интерфейс редактора Visual Basic включает следующие основные компоненты:

- Окно VBA Project (Проект)

- Окно редактирования кода

- Окна форм

- Окно свойств

- Панели инструментов

Окно VBAProject в редакторе Visual Basic активизируется выбором команды View | Project Explorer или нажатием кнопки Project Explorer панели инструментов Standard. В окне VBAProject представлена иерархическая структура файлов форм и модулей текущего проекта. В проекте автоматически создаются модули для каждого рабочего листа и для всей книги. Кроме того, модули формируются для каждой пользовательской формы, макросов и классов. По своему предназначению модули делятся на два типа: модули объектов и стандартные. К стандартным модулям относятся записываемые макросы. Такие модули добавляются в проект выбором команды Insert | Module. К модулям объектов относятся модули, связанные с рабочей книгой, рабочими листами, формами, а также модули класса.

По мере создания, добавления и удаления файлов из проекта эти изменения отображаются в окне проекта. Удаление файла из окна проекта производится выделением значка файла с последующим выбором команды File | Remove 'имя_модуля', где 'имя_ модуля' - имя выбранного модуля.

В окне проекта выводится список проектов всех открытых рабочих книг. Это позволяет легко копировать формы, модули из одного проекта в другой при помощи простой буксировки значка файла (для копирования файла - при нажатой клавише <Ctrl>).

Двойной щелчок на значке файла в окне проекта открывает окно редактора кода для соответствующего модуля. Открыть модуль в редакторе кода для соответствующего объекта (например, рабочего листа) можно также выделением значка этого объекта в окне проекта с последующим выбором команды View | Code. Вернуться назад из модуля к соответствующему объекту можно выбором команды View | Object.

Окно редактирования кода служит в качестве редактора для ввода кода процедур приложения. Код внутри модуля организован в отдельные разделы для каждого объекта, программируемого в модуле. В окне редактирования доступны два режима представления кода: просмотр отдельной процедуры и всего модуля. Переключение между режимами работы окна редактирования кода осуществляется выбором одной из двух кнопок в нижнем левом углу окна редактирования кода (левой - отдельная процедура, правая - все процедуры модуля), либо установкой или снятием флажка Default to Full Module View вкладки Editor диалогового окна Options, отображаемого на экране командой Tools | Options. Если установлен режим просмотра всех процедур модуля, то процедуры можно отображать с разделителями (горизонтальной чертой, разделяющей две соседние процедуры) или без них. Отображением или скрытием разделителей управляет флажок Procedure Separator диалогового окна Options.

Два раскрывающихся списка в верхней части окна редактора кода облегчают ориентацию в процедурах. Левый раскрывающийся список позволяет выбрать объект, а правый — содержит список событий, допустимый для указанного в левом списке объекта. Кроме того, выбор объекта и события приводит к созданию в редакторе кода первой и последней инструкции процедуры обработки события, связанного с выбранным объектом, если такой еще не существовало.

Написание программ существенно облегчается за счет способности редактора кода автоматически завершать написание операторов, свойств и параметров. При вводе кода редактор сам предлагает пользователю список компонентов, логически завершающих вводимую пользователем инструкцию. Например, набирая код

Range("A1").

после ввода точки на экране отобразится список компонентов, которые логически завершают данную инструкцию. Двойной щелчок на выбранном элементе из этого списка или нажатие клавиши <Таb> вставляет выбранное имя в код программы.

Перечень компонентов можно выводить на экран нажатием комбинации клавиш <Ctrl>+<J>, при этом список отображается как при установленном, так и снятом флажке Auto List Members вкладки Editor диалогового окна Options.

Список компонентов отображается только для существующих в форме или на рабочем листе элементов управлений.

Автоматическое отображение на экране сведений о процедурах, функциях, свойствах и методах после ввода их имени происходит только при установленном флажке Auto Data Tips вкладки Editor диалогового окна Options, отображаемого на экране выбором команды Tools | Options.

Описанную выше всплывающую подсказку можно также выводить на экран нажатием комбинации клавиш <Ctrl>+<I>. При этом всплывающая подсказка появляется как при установленном, так и снятом флажке Auto Data Tips вкладки Editor диалогового окна Options.

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

Редактор кода также производит автоматическую проверку синтаксиса набранной строки кода сразу после нажатия клавиши <Enter>. Если после набора и нажатия клавиши <Enter> строка выделяется красным цветом, то это как раз и указывает на наличие синтаксической ошибки во введенной строке. Эту ошибку необходимо найти и исправить.

Если курсор расположить на ключевом слове языка VBA, а также имени процедуры, функции, свойства или метода, и нажать клавишу <F1>, то на экране появится окно со справкой об этом элементе кода. Обычно к справке прилагается пример использования кода.

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

Функция InputBox выводит на экран диалоговое окно, содержащее сообщение, поле ввода и две кнопки ОК и Cancel. Устанавливает режим ожидания ввода текста пользователем и нажатия кнопки, а затем возвращает значение типа String по нажатию кнопки ОК, содержащее текст, введенный в поле ввода. При нажатии кнопки Cancel возвращает пустую строку (Empty).

Синтаксис: InputBox (Prompt [, Title] [, Default] [, Xpos] [, Ypos] [, Help file, Context])

Процедура-функция MsgBox выводит на экран диалоговое окно, содержащее сообщение, устанавливает режим ожидания нажатия кнопки пользователем, а затем возвращает значение типа Integer, указывающее, какая кнопка была нажата.

Синтаксис: MsgBox ( Prompt [, Buttons] [, Title] [, Helpfile, Context])

Соседние файлы в предмете Информационные технологии
  • #
  • #
    20.06.2014355.84 Кб14Лабораторная Бланк счета-фактуры.xls
  • #
    20.06.2014697.34 Кб11Лабораторная Проект товарного чека 2.xls
  • #
    20.06.20142.09 Mб16Лабораторная Проект товарного чека.xls
  • #
    20.06.2014851.97 Кб13Лабораторная работа №3 Счет на оплату по безналичному расчету.xls