Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_экз.docx
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
219.04 Кб
Скачать

Динамические массивы

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

Dim R() As Single

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

Dim R() As Double ReDim R(l To 10)

Допустимо повторное использование инструкции ReDim для изменения числа элементов и размерностей массива.

  1. Процедуры и функции vba

Процедурой называется фрагмент текста на языке VBA (программный код), заключенный между операторами Sub и End Sub. В отличие от процедуры при вызове функции имя последней выступает в роли переменной, содержащей вычисленное функцией значение (точно так же, как при вызове функции рабочего листа Excel).

Очень важную роль в программировании на VBA играет частный случай процедуры — процедура без параметров. Такие процедуры могут выступать в роли командных макросов и процедур обработки событий. Схема работы с командными макросами не отличается от традиционной схемы работы с макросами .

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

Синтаксис функций

Функции VBA, как правило, располагают списком параметров. Они не могут использоваться для обработки событий или в качестве программных макросов. Их можно вызывать как с помощью инструкции Call, так и непосредственно в процессе расчета значения выражения VBA (из кода других процедур или функций) или формулы рабочего листа Excel.

- Наиболее тривиальный из окна редактораVBE. (Run, F5, кнопка па панели инструментов окна VBE). Или же открыть окно макросов и после выбора выполнить.

Так можно запустить процедуры без аргументов. Процедуры такого типа есть в списке макросов (показать, что процедуры с аргументами так не запускаются).

  1. Управляющие конструкции vba. Операторы ветвления.

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

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

Ветвления

Однострочный вариант If <условие> Then <инструкция>

Многострочный сокращенный вариант инструкции If

If <условие> Then

<инструкция 1>

<инструкция 2>

<инструкция N>

End If

Полный вариант инструкции If

If <условие> Then

<инструкция 1>

<инструкция N>

Else

<инструкция 1>

<инструкция N>

End If

Если количество альтернативных вариантов исполняемой группы инструкций больше двух, инструкции If приходится вкладывать друг в друга, что осложняет чтение кода программы и ее отладку. Во многих случаях, когда номер выполняемой группы можно вычислить заранее, удобнее использовать инструкцию выбора варианта Select Case, синтаксис и пример которого приведен в листинге 5.9.

Листинг 5.9. Многострочный сокращенный вариант инструкции If

Select Case <выражение>

Case <список значений 1>

<группа инструкций 1>

Case <список значений 2>

<группа инструкций 2>

Case <список значений N>

Case Else

<группа инструкций N+1>

End Select

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