Файл: regeda_v_v_regeda_o_n_osnovy_programmirovaniya_na_vba.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 02.12.2019

Просмотров: 4433

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

2.11.7.

Дописать

в

программу

строки

для

вычисления

и

вывода

на

экран

монитора

суммы

элементов

двух

главных

диагоналей

матрицы

B(i,j)

2.11.8.

Добавить

в

программу

строки

для

вычисления

и

вывода

на

экран

монитора

среднего

квадратического

значения

элементов

матрицы

B(i,j)

по

строкам

3.

ОБЪЕКТНО

ОРИЕНТИРОВАННЫЙ

МЕТОД

ПРОГРАМ

-

МИРОВАНИЯ

Visual Basic for Application

 (VBA

) – 

это

объектно

-

ориентированный

язык

программирования

высокого

уровня

являющийся

одним

из

диалек

-

тов

очень

популярного

языка

программирования

 Visual Basic. 

Его

досто

-

инством

является

возможность

совместного

использования

с

другими

при

-

ложениями

 (Microsoft Word, Excel, Access, Project) 

и

языками

программи

-

рования

что

позволяет

создавать

полностью

автоматизированные

системы

за

время

меньшее

чем

при

помощи

традиционных

языков

программирова

-

ния

При

этом

 VBA 

сохранил

традиционную

для

 Basic 

простоту

в

исполь

-

зовании

1.1.

Объект

В

языке

 VBA 

применен

объектно

-

ориентированный

метод

програм

-

мирования

Объекты

 VBA – 

это

удобный

способ

хранения

данных

и

кода

в

программе

Вместо

написания

текста

программы

манипулирующей

дан

-

ными

  (

переменными

), 

находящимися

где

-

то

эти

данные

и

программный

код

обслуживающий

их

заключаются

в

единый

объект

В

результате

для

того

чтобы

например

отобразить

эти

данные

необходимо

иметь

только

доступ

к

объекту

послать

ему

соответствующее

сообщение

а

объект

сам

сделает

всю

необходимую

работу

При

внедрении

объекта

в

приложение

он

сам

заботится

о

себе

ему

нужно

указать

только

место

отображения

на

экране

Помещая

например

на

рабочий

лист

 Excel 

кнопку

 Visual Basic, 

нет

необходимости

сообщать

рабочему

листу

как

эта

кнопка

должна

работать

При

нажатии

на

кнопку

ее

встроенный

программный

код

сама

позаботится

обо

всем

Таким

образом

объект

объединяет

в

одно

целое

  (

инкапсулирует

свойства

объектов

и

возможные

над

ним

операции

 (

методы

).  

Объекты

инкапсулирующие

одинаковый

перечень

свойств

и

мето

-

дов

объединяются

в

классы

При

этом

каждый

отдельный

объект

является

экземпляром

класса

а

экземпляры

класса

могут

иметь

отличные

значения

свойств

.  


background image

Объекты

 VBA – 

это

кнопки

элементы

меню

документы

фрагменты

документа

символы

интервалы

ячеек

рабочего

листа

и

даже

сам

рабочий

лист

Почти

все

то

что

можно

увидеть

на

экране

работающего

приложе

-

ния

является

объектом

В

таблице

 3.1. 

приведены

примеры

классов

объек

-

тов

в

приложениях

 Microsoft Office Word 

и

 Excel. 

Таблица

 3.1  

Прило

-

жение

Класс

  

объектов

Свойства

Методы

Word 

Documents

(

документ

 
 
 

Name

 (

имя

FileName

  (

местополо

-

жение

Add

 (

создает

новый

объ

-

ект

в

семействе

и

др

Open

 (

открытие

Close

 (

закрыть

Save 

(

сохранение

и

др

Excel  Workbooks 

(

книга

ActiveSheet

  (

актив

-

ный

лист

книги

Name

 (

имя

Path

  (

полное

имя

пап

-

ки

где

находится

книга

)  

Add

 (

создает

новый

объ

-

ект

в

семействе

и

др

Open

 (

открытие

Close

 (

закрыть

Save 

(

сохранение

и

др

Объекты

Document

объединяются

в

класс

объектов

Documents

(). 

Один

из

документов

класса

Documents

с

именем

Проба

.doc

  – 

Documents (”

Проба

.doc”)

Объекты

в

приложениях

образуют

некоторую

иерархию

на

вершине

которой

находится

приложение

  (

Applicacion

). 

Иерархия

объектов

в

приложениях

 Microsoft Office Word 

и

 Excel 

приведена

в

таблице

 3.2. 

Таблица

 3.2.  

Word Excel 

активное

приложение

  

(

Applicacion

активное

приложение

  

(

Applicacion

документ

 (

Documents

книга

 (

Workbook

фрагмент

документа

 (

Selection

лист

 (

Worksheet

символ

 (

Character

диапазон

ячеек

 (

Range


background image

Чтобы

получить

доступ

к

объекту

в

языке

 VBA, 

необходимо

соста

-

вить

ссылку

на

него

начав

с

самого

общего

наружного

объекта

за

которым

должна

следовать

точка

и

следующий

вложенный

в

него

объект

и

так

да

-

лее

до

тех

пор

пока

не

будет

достигнут

нужный

объект

Например

чтобы

в

программе

 Word 

ссылка

на

документ

ЛР

1.doc 

выглядит

следующим

об

-

разом

:

 Application.Documents 

(”

ЛР

1.doc”)

Однако

делать

каждый

раз

ссылку

на

текущий

объект

необязательно

если

этот

объект

активный

Например

если

приложение

 Word 

активно

достаточно

сделать

относительную

ссылку

на

сам

документ

Documents (”

ЛР

1.doc”)

Таким

образом

почти

всегда

можно

не

включать

в

описание

объек

-

тов

ссылку

на

приложение

и

на

рабочую

книгу

или

документ

Однако

при

этом

необходимо

точно

знать

какой

объект

активен

в

момент

появления

оператора

с

пропущенной

спецификацией

объекта

Пропуск

спецификации

объекта

делает

процедуры

более

простыми

для

восприятия

кроме

того

это

позволяет

применить

этот

же

программный

код

к

другому

рабочему

листу

или

документу

не

меняя

имя

рабочего

листа

или

документа

в

ссылках

.  

В

дополнение

к

именованным

листам

или

рабочим

книгам

можно

использовать

такие

объекты

как

ActiveWorkbook

  (

активная

рабочая

книга

), 

ActiveDocument

 (

активный

документ

), 

ActiveWindow

 (

актив

-

ное

окно

для

того

чтобы

иметь

возможность

ссылаться

на

активные

объ

-

екты

не

указывая

их

имен

.

  

1.2.

Методы

объекта

Для

того

чтобы

объект

выполнил

какую

-

либо

операцию

необходимо

задать

метод

Многие

методы

имеют

аргументы

задающие

параметры

выполняемых

действий

Синтаксис

команды

применения

метода

объекта

Объект

.

Метод

  

арг

1:=

значение

,  

арг

2:=

значение

Например

операция

открытия

в

приложении

 Word 

документа

Про

-

ба

.doc

находящегося

на

диске

H

в

папке

ФИО

содержит

не

только

назва

-

ние

метода

но

и

указание

пути

к

открываемому

файлу

Documents().Open FileName:=(“H:\

ФИО

\

Проба

.doc”) 

Для

открытия

нового

документа

в

 Word 

используется

следующий

программный

код

Documents.Add DocumentType:=wdNewBlankDocument 

Для

вывода

на

печать

двух

первых

страниц

документа

Проба

.doc

необходимо

задать

для

метода

PrintOut

значения

аргументов

Range


background image

(

задает

формат

диапазона

печати

), 

From

и

To

 (

задают

номер

начальной

и

конечной

страниц

печати

): 

Documents(“

Проба

.doc").PrintOut _  

Range:=wdPrintFromTo,From:=”1”, To:=”2” 

Обратите

внимание

что

в

последнем

выражении

строка

кода

не

по

-

местилась

в

одной

экранной

строке

поэтому

она

перенесена

на

следую

-

щую

экранную

строку

с

помощью

символа

подчеркивания

 (_) 

с

предшест

-

вующим

символом

пробела

Сохранение

документа

Проба

.doc

на

диске

реализует

метод

Save

Documents(“

Проба

.doc").Save 

1.3.

Свойства

объекта

Для

изменения

состояния

объекта

необходимо

задать

новые

значе

-

ния

его

свойств

Синтаксис

команды

изменения

свойств

Объект

.

Свойство

 = 

ЗначениеСвойства

Для

установки

во

фрагменте

текста

  (

объект

Selection

для

вось

-

мого

символа

 (

объект

Characters(8)

начертание

полужирный

 (

свойст

-

во

Bold

), 

которое

имеет

два

значения

True

или

False

 (

установлено

или

не

установлено

), 

введем

следующий

код

Selection.Characters(8).Italic = True 

Объект

может

иметь

множество

свойств

С

помощью

инструкции

With

можно

задавать

значения

сразу

нескольким

свойствам

объекта

With 

Объект

.

Свойство

1=

ЗначениеСвойства

.

Свойство

2=

ЗначениеСвойства

… 

End With  

Заметьте

что

строки

находящиеся

между

With

и

End With

немно

-

го

сдвинуты

влево

И

хотя

для

самого

 VBA 

это

не

важно

однако

это

уп

-

рощает

чтение

программы

Поэтому

чем

больше

становится

программа

тем

чаще

необходимо

включать

в

нее

комментарии

и

отступы

Чтобы

уве

-

личить

отступы

в

одной

или

нескольких

строках

кода

отметьте

эти

строки

и

нажмите

клавишу

Tab

а

для

уменьшения

отступов

 – 

сочетание

клавиш

Shift

+

Tab


background image

4.

ИНТЕГРИРОВАННАЯ

СРЕДА

ПРОЕКТИРОВАНИЯ

 VBA 

(IDE VBA) 

Редактор

 Visual Basic 

в

интерпретации

 Microsoft 

называется

Интег

-

рированной

Средой

Проектирования

 (IDE). 

В

 IDE 

собраны

все

средства

и

инструменты

необходимые

программисту

для

разработки

и

создания

при

-

ложений

  (

написание

и

редактирование

программ

проектирование

диало

-

говых

окон

и

других

элементов

приложений

облегчающих

взаимодейст

-

вие

с

пользователем

запуск

программ

тестирование

и

отладка

программ

отслеживание

работы

всех

элементов

каждой

конкретной

программы

кон

-

троль

за

взаимодействием

различных

 VBA-

программ

). 

Самый

простой

способ

научиться

работать

с

 Visual Basic – 

записать

свой

макрос

в

результате

чего

автоматически

генерируется

программный

код

на

языке

 VBA, 

а

затем

запустив

отладку

программы

проанализиро

-

вать

все

команды

входящие

в

состав

макроса

Для

записи

макроса

который

например

переформатирует

выделен

-

ный

фрагмент

текста

в

среде

 WORD 

в

полужирное

начертание

красного

цвета

необходимо

выбрать

в

меню

Сервис

Макрос

Начать

запись

В

появившемся

окне

Запись

макроса

задать

содержательное

имя

макроса

например

Полужирный

_

красный

,

и

нажать

клавишу

ОК

При

этом

от

-

кроется

соответствующая

панель

записи

макроса

и

изменится

изображение

курсора

С

этого

момента

все

выполняемые

действия

будут

автоматически

сохраняться

в

макросе

В

данном

случае

необходимо

щелкнуть

на

кнопках

Цвет

шрифта

 (

Красный

)

и

Полужирный

.  

Для

завершения

записи

макроса

необходимо

щелкнуть

на

клавише

Остановить

запись

Затем

выбрать

созданный

макрос

в

окне

Макросы

(

Сервис

Макрос

Макросы

и

нажать

кнопку

Отладка

В

результате

откроется

окно

редактора

 Visual Basic (

рис

. 4.1), 

в

котором

уже

находится

листинг

записанного

макроса

Другой

способ

запустить

 Visual Basic – 

на

-

жать

комбинацию

клавиш

  (

Alt+F11

или

выбрать

в

меню

Сер

-

вис

Макрос

Редактор

 Visual Basic

Самое

большое

окно

в

 Visual Basic – 

окно

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

кода

 (1), 

которое

служит

в

качестве

редактора

для

ввода

кода

процедур

приложе

-

ния

Код

внутри

модуля

организован

в

отдельные

разделы

для

каждого

объекта

программируемого

в

модуле

С

помощью

кнопок

расположенных

слева

от

горизонтальной

прокрутки

можно

переключать

два

режима

пере

-

ключения

кода

просмотр

отдельной

процедуры

и

просмотр

всего

модуля

.  

Над

окном

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

кода

располагается

стандартная

панель

инструментов

 (2), 

которую

можно

отобразить

на

экране

выбором

команды

View

Toolbars

Standard