Процедуры и функции из вызовов в VBA 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Процедуры и функции из вызовов в VBA



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

[private|public]static]sub имя ([список_аргументов])

[AS < тип данных >]

<тело_процедуры>

[exit sub]

<тело_процедуры>

End Sub

Значение:

Sub – основное ключевое слово процедуры (идущение за ним - тело процедуры)

Public – объявленнная константа доступна для любой процедуры

Private – для процедур внутри модуля

Static – локальные переменные сохраняются в промежутках времени между вызовами этой процедуры

Типы процедур

Процедуры-подпрограммы sub

Процедуры-фукнции function

Процедура-функция возвращает единственное значение. Процедура подпрограммы выполняет действия, но не возвращает значение.

Операторы в VBA

Логические операторы

Стандартные логические операции (>,<,>=,<=,<>)

OR – логическое ИЛИ

AND – логическое И

Not – логическое отрицание

Простейшие операторы

Let – оператор присвоения обозначается знаком =

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

Оператор условного перехода IF передаёт управление ходом выполнения программы в зависимости от истинности некоторого условия

Оператор выбора одной из нескольких альтернатив Select Case

Операторы для организации циклических процессов предзначены для выполнения последовательности операторов цикла (for… Next,for Each… Next, While… Wend, Do… Loop.)

Операторы цикла с параметром for… Next выполняет операторы тела цикла заданное число раз.

Цикл с неизвестным числом повторений While… wend используется для выполнения операторов в теле цикла до тех пор, пока условие сохраняет значение «истина».

 

Использование функций в VBA

Математические и логические функции и операторы

Математические операторы:

+ - сложение;

- - вычитание;

/ - деление;

*- умножение

Математические функции:

Функция Описание
SQR(x) Возвращает квадратный корень числа
X^n Возвращает значение числа в степени n
Sin(x) Возвращает синус угла в радианах
Cos (x) Возвращает косинус угла в радианах
Abs(x) Возвращает модуль числа
Tan(x) Возвращает тангенс угла в радианах
Atn(x) Возвращает арктангенс угла в радианах
Exp(x) Возвращает значение числа е в степени х
Log(x) Возвращает натуральный логарифм числа

Для целых чисел используют оператор MOD. Он возвращает остаток при целом делении двух чисел (значение по модулю).

Синтаксис:

Результат = число1 Mod число2

Логические операторы:

Стандартные логические операции (>,<,>=,<=,<>)

Оператор OR. Выполняет операцию логического ИЛИ (сложения) для двух выражений. Синтаксис: результат=выражение1 Or выражение2

Оператор AND. Возвращает результат конъюнкции (логического И) для двух выражений. Синтаксис: результат=выражение1 And выражение2

Оператор Not. Выполняет над выражением операцию логического отрицания. Синтаксис: результат=Not выражение

 

46 Область определения переменных и констант в VBA

Константы, их объявление. Как и переменные, константы имеют имя, но не изменяют своего значения во время выполнения программы. Для определения констант в Visual Basic используется оператор Const такого формата:

[Public | Private] Const {имя константы [AS <тип данных>] =

<константное выражение>}…

Поясним значение ключевых слов:

Public — объявленная константа доступна для любой процедуры из всех модулей базы данных;

Private — объявленная константа доступна для процедур только внутри своего модуля;

AS <тип данных> - объявление типа данных константы.

Примеры объявления констант.

Const Max = 100000

Public Const strVolume = «Maximum»

Private Const Max AS Integer = 100 000

Private Const PI AS Double = 3.14159

Значение переменной изменяется в процессе выполнения программы. Если переменная доступна многим программам, то какая-то программа может изменить значение переменной; чтобы избежать этого, ограничивают доступ к переменным. Для этого пользователь-программист определяет, какие процедуры будут иметь доступ к переменной, — определяет область действия (область видимости) переменной.

 

Область действия Способ объявления константы
Отдельная процедура В процедуре или функции
Отдельный модуль Перед первой процедурой в модуле
Все модули Перед первой процедурой в модуле с ключевым словом Public

При попытке изменить значение константы в процедуре VBA вы получите ошибку.

 

Соглашение по синтаксису в VBA, по идентификации

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

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

Правила присвоения переменным имен:

· длина имени не может превышать 255 символов;

· первым символом в имени переменной должна быть буква;

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

· запрещены ключевые слова (имена функций и операторов VBA) и символы @, $, #, &, %,!.

Имя объекта может начинаться с префикса типа данных (три латинские буквы) объявляемого объекта. Например: intСтипендия (int — целое число), strProzvisca (str — символьное число), bitПроверка (bit — логический тип).

Инструкция Const в VBA

Описывает константы, используемые вместо констант в явном представлении (литералов).

[Public | Private] Const имяКонстанты [As тип] = выражение

Параметры
Public- Необязательный. Ключевое слово, используемое на уровне модуля для описания констант, доступных всем процедурам во всех модулях. Не допускается в процедурах.
Private- Необязательный. Ключевое слово, используемое на уровне модуля для описания констант, доступных только внутри модуля, в котором выполняется описание. Не допускается в процедурах.


имяКонстанты -Обязательный. Имя константы, удовлетворяющее стандартным правилам именования переменных.
тип- Необязательный. Один из поддерживаемых типов данных: Byte, Boolean, Integer, Long, Currency, Single, Double, Decimal (в настоящее время не поддерживается), Date, String или Variant. Для каждой описываемой константы следует использовать отдельное предложение As тип.
выражение- Обязательный. Литерал, другая константа или любое сочетание, которое включает все арифметические или логические операторы за исключением Is.

Замечания
Константы по умолчанию являются личными. Внутри процедур константы всегда являются личными; их видимость не может быть изменена. В стандартных модулях видимость, которую по умолчанию имеют константы на уровне модуля, может быть изменена с помощью ключевого слова Public. В модулях класса, однако, константы могут быть только личными, и их видимость не может быть изменена с помощью ключевого слова Public.
Имеется возможность объединять несколько описаний констант на одной строке, разделяя инструкцию присвоения каждой константы с помощью запятой. Если описания констант объединяются таким образом, используемое ключевое слово Public или Private применяется ко всем константам на строке.
Не допускается использование переменных, определяемых пользователем функций или внутренних функций языка Visual Basic (типа Chr) в выражениях, присваиваемых константам.
Константы помогают сделать программы самодокументируемыми и легко доступными для исправлений. В отличие от переменных константы не могут непредсказуемым образом изменяться при выполнении программы.
Если тип константы не задается явным образом (с помощью предложения As тип), константа приобретает тип, наиболее подходящий заданному выражению.
Константы, описанные в процедурах Sub, Function или Property являются локальными для этих процедур. Областью определения константы, описанной вне процедуры, является модуль, в котором она описана. В любом месте, в котором возможно использование выражений, допускается использование и констант.

Пример
В данном примере инструкция Const используется для описания констант, используемых вместо текстовых значений. Общие (Public) константы размещаются в общем разделе стандартного модуля, но не модуля класса. Личные (Private) константы могут быть описаны в общем разделе модуля любого типа.

' По умолчанию константы являются личными (Private).Const MyVar = 459 ' Объявляет общую (Public) константу.Public Const MyString = "СПРАВКА" ' Объявляет личную (Private) целую (Integer) константу.Private Const MyInt As Integer = 5 ' Объявляет несколько констант в одной строке.Const MyStr = "Привет", MyDouble As Double = 3.4567

Массивы в VBA. Основные понятия

Массив – это n-мерная совокупность индексированных переменных одного типа. Массиву присваивается имя – имя переменной, за которым в круглых скобках указано одно (для одномерных) или два (для двухмерных) натуральных положительных числа. Элементы из которых состоит массив называют переменными, которые в памяти размещаются последовательно. Все элементы массива имеют одно имя, но различные номера в массиве. Число элементов в массиве задается при его объявлении в операторе Dim и во время выполнения программы не изменяется.

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

Общий вид объявления массива:

Dim <имя массива> (<размер массива>) AS <тип данных>

Пример:

Dim mass(23) AS Integer -одномерный массив

Dim MASS(5 TO 8) AS Integer – двумерный массив

 

 



Поделиться:


Последнее изменение этой страницы: 2016-07-16; просмотров: 879; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.144.33.41 (0.014 с.)