Описание переменных производится до их использования в области описания программы

VBA не требует явного описания переменных перед их использованием. Переменные, которые сразу используются в программе без предварительного описания, называются неявно описанными. Неявно описанным переменным присваивается тип данных Variant. Однако рекомендуется явно описывать все переменные, так как это способствует увеличению скорости выполнения программы и упрощает ее отладку. Для описания переменных в VBA используются операторы Dim, Public, Private и Static.

Синтаксис:

Dim | Public | Private | Static имя_переменной _

[([ индексы ])][As тип ] [. ]

Параметр имя_переменной – имя описываемой переменной. Необязательные скобки и параметр индексы используются для описания массивов. Дополнительный параметр As тип позволяет назначить переменной тип данных. Если необходимо явно задать тип, то это надо сделать для каждой переменной списка.

Область видимости и время жизни переменной определяется тем, где и как была описана переменная:

– Личная переменная уровня процедуры описывается с помощью инструкции Dim, размещенной в процедуре. Такая переменная сохраняет свое значение только при выполнении процедуры, а при повторном запуске процедуры ее необходимо инициализировать заново.

Структура программы на Си, Переменные, Типы данных

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

– Личная переменная уровня модуля описывается с помощью инструкции Dim или
Private, размещенной в разделе описаний модуля.

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

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

Пример:

Dim Value1 As String

Dim Value1 As String, Value2 As Integer

Dim Value1, Value2, Value3 As Integer

Описание и использование массивов

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

Пример:

Dim strNames(10) As String

данная инструкция описывает одномерный массив с именем strNames, состоящий из 11 элементов (с 0 по 10); допустимые данные: строки переменной длины типа String.

В VBA можно создавать и многомерные массивы.

Пример:

Dim intNames(9, 14) As Integer

данная инструкция описывает двумерный массив с именем intNames, состоящий из
150 элементов, расположенных в 10 строках и 15 столбцах; допустимые данные: целые числа типа Integer.

Dim intNames(1 To 9, 1 To 14) As Integer

данная инструкция описывает двумерный массив с именем intNames, состоящий из
126 элементов, расположенных в 9 строках и 14 столбцах; допустимые данные: целые числа типа Integer.

Читайте также:
Программа которая открывает сайт

Для изменения используемой по умолчанию нижней границы индексов используется инструкция Option Base, которая размещается в разделе описаний модуля:

Структура программы на языке Паскаль

Синтаксис:

Пример:

Dim strNames(10) As String

данная инструкция описывает одномерный массив с именем strNames, состоящий из 10 элементов (с 1 по 10); допустимые данные: строки переменной длины типа String.

Описание и использование констант

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

Синтаксис:

[Public | Private] Const имя_константы [As тип ] = значение

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

В VBA имеется множество встроенных констант. Хотя вместо имен встроенных констант можно использовать и их значение, использование имен предпочтительнее, так как улучшает понимание текста программы, а также потому, что фактические значения констант в отличие от имен могут измениться в будущих версиях языка.

Пример:

Const intMaxCount As Integer = 30

Const blnFlagStart As Boolean = False

Const strMsgRus As String = “Введите значение параметра”

Const dtmStartFinYear As Date = #01/01/2005#

Использование префиксов типов данных в именах переменных

Префикс Тип данных Пример
bln Boolean blnFlagStart
byt Byte bytMaxCount
cur Currency curMaxCost
dbl Double dblMaxCount
dtm Date dtmStartFinYear
int Integer intMaxCount
lng Long lngMaxValue
obj Object objMainForm
str String strMsgVarning
sng Single sngMaxCount
vnt Single vntTempValue
g Глобальная переменная g_intMaxCount

Тема 3. Инструкции языка Visual Basic для приложений

3.1. Оператор присваивания

3.2. Условный оператор

3.3. Оператор выбора

3.4. Оператор цикла Do … Loop

3.5. Оператор цикла со счетчиком (For … Next)

3.6. Оператор цикла For Each … Next

3.7. Оператор With … End With

3.8 Оператор безусловного перехода

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

Оператор присваивания

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

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

Оператору присваивания соответствует знак =(равно).

Синтаксис:

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

Читайте также:
Программа чтобы пройти антиплагиат

Тип данных переменной ИмяПеременной должен быть совместим с типом данных вычисленного выражения.

Допускается запись нескольких операторов в строке. В качестве разделителя операторов используется знак:(двоеточие).

Пример:

М = (А + В) / 2: С = К: D = 5

Условный оператор

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

Условный оператор имеет две формы синтаксиса: строчную и блочную.

Синтаксис строчной формы:

Условие представляет собой логическое выражение или набор логических выражений объединенных логическими операциями.

При возвращении условием значения True, выполняются инструкции, следующие за ключевым словом Then, а при возвращении условием значения False, выполняются инструкции, следующие за ключевым словом Else.

Примеры:

If A>B Then P=A: A=B: B=P

If A>B And R=0 Then C=A+B: К=1 Else C=A*B: К=2

If A>B Then C=A+B Else If A

Синтаксис блочной формы:

[ инструкции_1 ]

[ инструкции_2 ]]

[ инструкции_N ]]

[ инструкции_else ]]

При возвращении условием_1 значения True, выполняются операторы, расположенные в нижеследующих строках, после чего управление передается в строку, следующую за ключевым словом End If, а при возвращении условием_1 значения False управление передается в строку, содержащую условие_2. Выполнение последующих проверок осуществляется аналогично. Если ни одно из условий не равно True, то выполняются операторы, расположенные в строках после ключевого слова Else, либо, если ключевое слово Else отсутствует, то управление передается в строку, следующую за ключевым словом
End If.

Примеры:

‘ Пример 1 – это комментарий

ElseIf K = 2 Then

ElseIf K = 3 Then

Оператор выбора

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

Синтаксис:

Select Case переменная

Case список_значений_1

[ инструкции_1 ]

[Case список_значений_2

[ инструкции_ 2]]

[Case список_значений_n

[ инструкции_n ]]

[ инструкции_else ]]

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

Величины для сравнения, входящие в ­ список_значений, могут быть заданы в виде:

– списка значений, перечисленных через запятую;

– диапазона значений в виде начальное_значение To конечное_значение;

– выражения сравнения в виде Is оператор_сравнения значение.

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

Пример:

Источник: zdamsam.ru

Описание переменных.

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

Читайте также:
Как сделать так чтобы все программы запускались от имени администратора без подтверждения

Описание переменных в общем случае имеет вид:

[класс памяти][const]тип имя[=значение [,имя [=значение…]]];

Поясним назначение составных частей этого описания.

  • Необязательный описатель класс памяти может принимать одно из значений: auto,extern,static,register. Об этом описателе мы поговорим позже.
  • Модификатор const служит для определения именованной константы; присвоенное ей значение изменить нельзя.
  • Поле тип есть один из описателей основных типов ( char, int, float, и т.д.)
  • Имя переменной выбирается по ранее рассмотренным правилам. При этом может осуществляться её начальная инициализация – переменной присваивается заданное значение.

Источник: studfile.net

Раздел описания переменных

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

Раздел описания переменных начинается зарезервированным словом var / от variable — переменная/. Вслед за ним идет список, записи которого имеют следующую структуру: сначала через запятую перечисляется один или несколько идентификаторов переменных, затем ставится двоеточие и после двоеточия указывается тип перечисленных переменных. При обработке описания переменной транслятор создает новую переменную и присваивает ей определенный идентификатор.

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

Result, Intermediate, SubTotal: Real;

I, J, X, Y: Integer;

Accepted, Valid: Boolean;

Buffer: array[0..127] of Byte;

Раздел описания процедур и функций

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

Целесообразно оформить эти операторы в виде подпрограммы — процедуры или подпрограммы — функции. Процедуры и функции позволяют записать повторяющиеся участки один раз, а в нужных местах программы приводить лишь обращение к ним. Использование процедур позволяет сократить объем, улучшить структуру программы и уменьшить ве­роятность наличия ошибок. Основные стандартные процедуры и функции приведены в приложении 1.

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:

Источник: studopedia.ru

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru