Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Мои ответы по кит.docx
Скачиваний:
15
Добавлен:
24.04.2019
Размер:
411.07 Кб
Скачать

37. Vba. Иерархия vba. Типы процедур. Операторы. Управляющие структуры.

В VBA предусмотрены следующие типы процедур:

Процедура типа Sub (подпрограмма) — универсальная процедура для выполнения каких-либо действий. Макрос в VBA — это просто процедура типа Sub, не имеющая параметров.

Процедура типа Function (функция) — тоже набор команд, которые должны быть выполнены. Принципиальное отличие только одно: функция возвращает вызвавшей ее программе какое-то значение, которое там будет использовано.

Процедуры обработки событий (event procedure) — процедуры типа Sub специального назначения, которые выполняется в случае возникновении определенного события.

Процедуры типа Property (процедуры свойства). Они нужны для определения свойств создаваемого.

Оператор — это наименьшая способная выполняться единица кода VBA. Оператор может объявлять или определять переменную, устанавливать параметр компилятора VBA или выполнять какое-либо действие в программе.

Арифметических операторов в VBA всего 7: сложение (+), вычитание (-), умножение (*), деление (/), возведение в степень (^), целочисленное деление (\) и деление по модулю (Mod).

Оператор присвоения в VBA — знак равенства.

Операторов сравнения в VBA всего 8:

- Равенство (=).

- Больше, чем и меньше, чем (> и <).

- Больше или равно и меньше или равно (>= и <=).

- Не равно (<>).

- Сравнение объектов (Is). Определяет, ссылаются ли объектные переменные на один объект).

- Подобие (Like). Сравнивает строковый объект с шаблоном и определяет, подходит ли шаблон.

Управляющие структуры позволяют управлять последовательностью выполнения программы.

VBA поддерживает следующие конструкции принятия решений:

If . . . Then

If . . . Then . . . Else

Select Case

Конструкция If . . . Then применяется, когда необходимо выполнить один или группу операторов в зависимости от некоторого условия. Синтаксис этой конструкции позволяет задавать ее в одной строке или в нескольких строках программы:

If условие Then выражение

If условие Then

выражение

End If

Конструкция If . . . Then . . . Else определяет несколько блоков операторов, один из которых будет выполняться в зависимости от условия:

If условие1 Then

выражение1

ElseIf условие2 Then

выражение2

. . .

Else

выражение-n

End If

Конструкция Select Case является альтернативой конструкции If . . . Then . . . Else в случае выполнения блока, состоящего из большого набора операторов:

Select Case проверяемое_выражение

[Case список_выражений1

[блок_операторов1]]

[Case список_выражений2

[блок_операторов2]]

. . .

[Case Else

[блок_операторовn]]

End Select

38. Vba в word. Классы задающие структуризацию текста документа.

Текст - это основа большинства документов. Его можно структурировать, оперируя различными единицами при решении тех или иных задач преобразования текста. Минимальной единицей текста является символ. Другие естественные единицы - это слова, предложения, абзацы. Более крупными частями текста являются страницы, параграфы и главы.

Классы Characters, Words, Statements, Paragraphs позволяют работать с последовательностями (коллекциями) символов, слов, предложений, абзацев. Может показаться удивительным, но классов, соответствующих таким элементам, как символ, слово или предложение, нет. Элементом коллекций Characters, Words и Statements является объект класса Range. Это один из самых важных объектов, необходимых для понимания работы с текстами. Объект Range позволяет работать как с одним символом, так и с последовательностью символов. Документы, поддокументы, абзацы, разделы - все они имеют метод или свойство Range, возвращающее объект Range, представляющий область, связанную с объектом, вызвавшим метод (свойство) Range. Эту область можно рассматривать как интервал, задаваемый первым и последним символом текста данной области. Поэтому работа с текстом, так или иначе, ведется через методы и свойства объекта Range

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]