рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Описание простейших конструкций языка программирования VBA

Описание простейших конструкций языка программирования VBA - раздел Информатика, ИНФОРМАТИКА В Vba Используются Следующие Символы: 1. Прописные И Строчные Буквы ...

В VBA используются следующие символы:

1. Прописные и строчные буквы латинского алфавита (AZ , az).

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

3. Цифры ­– от 0 до 9 .

4. Символ подчеркивания _ .

5. Неизображаемые символы – символ пробела, табуляции, перехода на новую строку.

6. Все остальные символы, которые имеются на стандартной клавиатуре компьютера.

Запись чисел на языке VBA близка к естественной. Целые числа записываются как последовательность цифр со знаком + или - (знак + можно опустить), например, +12 , 14 , -78 и так далее. В числах, имеющих дробную часть, для отделения целой части от дробной используется десятичная точка , как это принято в англоязычных странах, например, -17.34 , 37.891 и так далее (так называемые числа с фиксированной точкой). Отметим, что в электронных таблицах Excel ставится либо десятичная точка, либо десятичная запятая, что зависит от заданного формата ячеек. Кроме того, используются числа с плавающей десятичной точкой, которые являются аналогом математической записи чисел с мантиссой и порядком. Так, числам в математике и соответствуют записи -12.735E5 и 3.16E-12 . Число со знаком, стоящее до символа E , называется мантиссой, целое число со знаком, стоящее после символа E , называется порядком. Следует отметить, что различия между числами с фиксированной запятой и числами с плавающей запятой имеют место только на внешних носителях (мониторе или бумаге). Во внутреннем (машинном) коде они представляются одинаково.

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

процентнаяставка

x_начзнач

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

ПроцентнаяСтавка

x_НачЗнач

Длина имени не должна превышать 255 символов, при этом следует отметить, что VBA различает только первые 31 символов. На начальном этапе мы будем использовать только короткие имена.

Для эффективной работы программ на VBA необходимо задать тип переменной. Основные типы переменных, которые мы будем использовать, следующие:

Тип Хранимая информация Занимаемая память Интервалы значений
Integer Целые числа 2 байта От –32768 до 32768
Single Вещественные чис-ла одинарной точ-ности (7 цифр в мантиссе) 4 байта По модулю от 1.401298Е-45 до 3.402823Е+38
String Текстовая информация 10 байт + 1 байт на каж-дый символ От 0 до двух мил-лиардов символов
Variant Значения любого типа 16 байт для чисел, 22 байта + 1 байт на каж-дый символ Любое числовое или строковое значение

 

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

Dim i,j As Integer

Dim x,y As Single

Здесь переменные i и j определяются как целые, а переменные x и y – как переменные вещественного типа одинарной точности.

Очень часто используются именные постоянные, которые в данной программе не изменяются или изменяются очень редко. Например, при изменении СНиП-ов (СНиП – стандартны, нормы и правила). Описание именных постоянных производится в самом начале программы, например, оператором

Const alfa=1.37, n=55, text=”Отдел кадров”

Тип именной постоянной определяется выражением, стоящим в правой части. Так, в приведенном примере именная постоянная alfa будет вещественного типа, постоянная n – целого типа, а постоянная text – текстового типа. Отметим, что значение текстовой константы должно находиться между кавычками. Более подробное описание именных констант, переменных и других объектов, а также области их действия можно найти в обширной литературе по VBA.

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

1. Abs(x) – вычисляет абсолютную величину аргумента х; тип х может быть вещественным или целым, результат совпадает с типом аргумента.

2. Atn(x) – вычисляет арктангенс аргумента x; тип аргумента может быть вещественным или целым, результат всегда вещественный. Результат получается в радианах.

3. Cos(x) – вычисляет косинус аргумента х; тип аргумента может быть вещественным или целым, результат всегда вещественный. Аргумент должен быть всегда задан в радианах.

4. Exp(x) – возведение числа в степень х; тип аргумента х может быть вещественным или целым, результат всегда вещественный.

5. Log(x) – вычисляет натуральный логарифм положительного аргумента х; тип аргумента х может быть вещественным или целым, результат всегда вещественный.

6. Sin(x) – вычисляет синус аргумента х; тип аргумента может быть вещественным или целым, результат всегда вещественный. Аргумент должен быть всегда задан в радианах.

7. Sqr(x) – вычисляет квадратный корень из неотрицательного аргумента х; тип аргумента х может быть вещественным или целым, результат всегда вещественный.

8. Tan(x) – вычисляет тангенс аргумента х; тип аргумента может быть вещественным или целым, результат всегда вещественный. Аргумент должен быть всегда задан в радианах.

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

Арифметические выражения в VBA соответствуют общепринятым алгебраическим выражениям в математике. В арифметические выражения могут входить числа, именные постоянные, переменные, функции (как стандартные, так и определяемые пользователем), соединенные знаками арифметических операций. Для обозначения арифметических операций используются знаки: +(сложение), - (вычитание), * (умножение), ^(возведение в степень), / (деление), (целочисленное деление), mod (остаток от деления целого числа на целое).

Операции и modосуществляются только над целыми числами. Так, -15 4 будет равно -3, а -17 mod 4 будет равно -1. В VBA принят следующий приоритет арифметических операций: 1) скобки и вызов функций, 2) ^ (возведение в степень), 3) - (смена знака), 4) * и / (слева направо в порядке появления), 5) , 6) mod , 7) + и - (слева направо в порядке появления).

При работе с арифметическими выражениями оператор присваивания имеет вид:

< Переменная > = < Арифметическое выражение >

Так, например, в результате действия следующей пары операторов

x = 2

x = x + 2

переменной х будет присвоено значение 4 .

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

y = Sin(3 * x) ^ 2 – 2 * _

Exp(-x ^ 2 )

соответствует оператору

y = Sin(3 * x) ^ 2 – 2 * Exp(-x ^ 2 )

VBA позволяет записывать несколько операторов в строчку с использованием разделителя в виде двоеточия. Так, записи

x = x + 1

y = x + 2

и

x = x + 1: y = x + 2

идентичны.

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

y=sin(3.2*x^2)^3*exp(-x/2)

то после нажатия клавиши Enter или перемещения курсора вверх или вниз появится

y = Sin(3.2 * x ^ 2) ^ 3 * Exp(-x / 2)

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

Чтобы обеспечить ввод какой-либо информации из таблиц Excel в оперативную память компьютера, можно воспользоваться либо методом Range , либо методом Cells . Предположим, что в ячейке В4 (или в ячейке, лежащей на 4 – й строке и 2 – й колонке) записано число -12,77 . Тогда при выполнении

x = Range("B4").Value

или

x = Cells(4,2).Value

переменной х будет присвоено значение, равное -12.77 . При выводе значения переменной х в ячейку С4 (ячейку, лежащую на 4 – й строке и 3 –й колонке) можно воспользоваться операторами:

Range("C4").Value = x

или

Cells(4,3).Value = x

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

Очень часто в расчетных формулах используется постоянная , которая отсутствует в VBA как стандартная именная постоянная в краткой записи. Для использования этой постоянной ее надо определить либо как именную постоянную, описанную в разделе Const :

Const pi = 3.1415926

либо как переменную :

. . . . . . .

Dim pi As Single

. . . . . . .

pi = 4 * Atn( 1 )

. . . . . . .

Можно воспользоваться для записи рассматриваемой постоянной объектным модулем VBA : объектом Application (Приложение) – эти структуры мы в представленном методическом указании не рассматриваем. При этом запись постоянной будет иметь вид : Application.Pi() . На начальном этапе изучения VBA эта запись не очень удобна.

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

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

Go To < метка >

В качестве метки можно использовать идентификатор, после которого стоит двоеточие, и эта метка может стоять в любом месте программы. Например

. . . . . . . .

Go To Metka3

. . . . . . . .

Metka3 :

y = x ^ 2 – 4 * x + 7

. . . . . . . .

или

. . . . . . . .

av :

. . . . . . . .

Go To av

. . . . . . . .

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

Для составления разветвляющихся программ используются условные операторы. Полный условный оператор имеет вид :

If < логическое условие > Then

< Группа операторов 1 >

Else

< Группа операторов 2 >

End If

Если логическое условие выполняется, то выполняется группа операторов 1, затем управление в программе передается оператору, который следует за End If . Если же логическое условие не выполняется, то выполняется группа операторов 2, после чего управление в программе передается оператору, который следует за End If .

Неполный условный оператор имеет вид :

If < логическое условие > Then

< Группа операторов >

End If

Если логическое условие выполняется, то выполняется группа операторов и программа передает управление операторам, которые следуют за End If . Если логическое условие не выполняется, то группа операторов не выполняется и управление в программе передает управление оператору, который следует за End If .

При этом предполагается, что в операторах, стоящих после служебных слов Then и Else , отсутствует оператор безусловной передачи управления.

К логическим условиям следует отнести соотношения типа

<меньше,

>больше,

=равно,

<> не равно,

<=меньше или равно,

>=больше или равно.

В последних трех операторах пробел между символами не ставится. Если пробел поставить, то редактор VBA его уберет.

Кроме приведенных очевидных логических соотношений следует отнести логическое " И " и логическое " ИЛИ " , которые записываются соответственно как And и Or . В логических операциях вначале выполняются арифметические операции, затем операции соотношений и в последнюю очередь логические " И " и " ИЛИ " . Так условие запишется x > -1 And x <= 3 , а условие запишется как x <= 4 Or x > 7 .

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

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

ОператорFor – Next . Синтаксис этого оператора

For Счетчик = Начало To Конец [ Step Шаг ]

Операторы

Next [ Счетчик ]

Повторяет выполнение операторов, пока Счетчик изменяется от начального значения до конечного с указанным шагом. Если Шаг не указан, то он полагается равным +1 .

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

ОператорDo While – Loop . Синтаксис этого оператора

Do While < Логическое условие >

Операторы

Loop

Сначала проверяется логическое условие. Если оно выполняется, то выполняются операторы в цикле. Затем управление передается на логическое условие. Как только логическое условие не будет выполняться, то происходит выход из цикла. Заметим, что если логическое условие на самом начальном этапе не будет выполняться, то группа внутренних операторов цикла ни разу не проработает.

Отметим, что при табулировании функций перед входом в цикл необходимо задать начальное значение переменной цикла, а внутри цикла предусмотреть модификацию переменной цикла.

ОператорDo – Loop While . Синтаксис этого оператора

Do

Операторы

Loop While < Логическое условие >

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

ОператорDo Until – Loop . Синтаксис этого оператора

Do Until < Логическое условие >

Операторы

Loop

Этот оператор цикла работает аналогично оператору Do While – Loop , но работает только до тех пор, пока логическое условие не выполняется.

ОператорDo – Loop Until . Синтаксис этого оператора

Do

Операторы

Loop Until < Логическое условие >

Этот оператор цикла работает аналогично оператору Do – Loop While , но работает только до тех пор, пока логическое условие не выполняется.

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

– Конец работы –

Эта тема принадлежит разделу:

ИНФОРМАТИКА

СТРОИТЕЛЬНЫЙ УНИВЕРСИТЕТ... ИНФОРМАТИКА работ для студентов... Ростовский государственный...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Описание простейших конструкций языка программирования VBA

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

ИНФОРМАТИКА
Методические указания с вариантами контрольных работ для студентов заочной формы обучения     РОСТОВ - НА - ДОНУ

Задача № 1
1. Составить программу вычисления площади и периметра равнобедренного треугольника с основанием a и углом при вершине

Задача № 2
Составить программу вычисления функции и вычислить значения функции в указанных точках. В точках, обозначенны

Задача № 3
Составить программу вычисления суммы и произведения указанных членов числовой последовательности. 1.

Задача № 4
Составить программы табулирования функции (см. задачу 2) на отрезке

Задача № 1
Составить программу вычисления площади и периметра треугольника со сторонами и острым углом между ними

Задача № 2
Составить программу вычисления функции и вычислить значения функции в указанных точках. В точках, обозначенны

Задача № 3
Вычислить и , если

Задача № 4
Составить программы табулирования функции (см. задачу 2) на отрезке

ЧАСТЬ 2
Во второй части нашего курса рассмотрим простейшие приемы работы на VBA с подпрограммами и массивами, связанные с инженерно-математическими расчетами. При составлении сложных программ очен

Задача № 1
Составить программу табулирования функций и

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги