Урок 2 по теме «VBA» (СПО, Математические операторы в программировании)
Пояснительная записка к презентации
презентация по теме
PPTX / 171.57 Кб
практическое задание урока
DOCX / 14.84 Кб
Карточки-задания
DOCX / 18.93 Кб
Математические операторы в программировании.
Математические функции и операторы
Функция Sqr (число) – возвращает квадратный корень числа, например: Sqr(4) возвращает 2
Функция Sqn (число) – определяет положительное число, отрицательное или равно нулю, если число отрицательное будет возвращено значение «-1», при положительном числе будет возвращено значение «1», если число ноль, то и значение будет возвращено как ноль.
Примеры:
Sqn(-66) –возвращает «-1»
Sqn(75) – возвращает «1»
Sqn(0) – возвращает «0»
Round (число [,число знаков после запятой])
Функция служит для округления чисел до заданной точности (число значащих цифр в дробной части).
Возвращаемое значение:
В результате действия функции возвращается округленное число
Пример:
Dim b as double
C= 123,1234568
B= Round (c, 2) возвращает 123,12
B= Round (c, 4) возвращает 123,1234
Если не указать число значащих цифр дробная часть будет отброшена
B= Round (c) возвращает 123
Rnd[ (Number)]
Функция Rnd (Random) служит для генерации случайных чисел.
Возвращаемое значение: Функция Rnd возвращает значение в диапазоне от 0 до, содержащее случайное число (причем 1 не входит в этот диапазон, а 0 входит). Строго говоря, функция возвращает псевдослучайные числа. При каждом запуске программы, функция генерирует одну и ту же последовательность случайных чисел. Во избежание этого явления используйте инструкцию Randomize
Примечание:
Чтобы получить значения случайных чисел в интервале от min до max используйте формулу:
Int ( (max — min + 1) * Rnd + min), где min и max-минимальное и максимальное число соответственно
Пример:
Генерируем случайные числа от 1 до 7
Dim slchislo
slchislo = Int ( (9 * Rnd) + 1)
IsNumeric (Expression)
Функция IsNumeric проверяет, является ли значение данного выражения числом. Возвращает значение типа Boolean, показывающее, имеет ли выражение числовое значение.
Функция IsNumeric возвращает True, если выражение имеет числовое значение; в противном случае возвращается False.
IsNumeric возвращает False, если выражение является выражением даты
Пример:
Проверим, имеет ли переменная значение, которое может интерпретироваться как числовое
Dim provstr, rez
provstr = “53“ ' присваиваем значение
rez = IsNumeric (MyVar) ' возвращает True
provstr = “45 Help» ' присваиваем значение
rez = IsNumeric (MyVar) ' возвращает Falsе
Abs (Number)
Функция Abs (Absolute) служит для вычисления абсолютного значения (модуля) числа
Пример
Dim A,B
A=Abs (60.5) ' возвращается 60.5
B=Abs (-99.10) ' возвращается 99.10
Математические операторы |
Сочетание клавиш |
Выполняемые действия |
Пример |
+ |
+ на цифровой клав., Shift+ «=» на алфавитно-цифровой |
сложение |
Sum= a+b A=2 B=5 Sum=7 |
- |
- на клавиатуре |
вычитание |
Razn=b-f B=20 F=15 Razn=5 |
/ |
Знак деления на цифровой клавиатуре |
деление |
Delen= f/g F=15 G=2 Delen=7.5 |
\ |
\ на алфавитно- цифровой клавиатуре |
Целочисленное деление |
Celdel=h\k H=15 G=2 Celdel=7 |
* |
х на цифровой клавиатуре |
умножение |
Proizv=b*n B=5 N=25 Proizv=125 |
^ |
Shift+6 на алфавитно-цифровой клавиатуре при английской раскладке |
Возведение в степень |
Stepen=n^3 N=6 Stepen=216 |
Типы данных
Тип данных |
Описание и диапазон значения |
Byte |
Хранение положительных чисел от 0 до 255 |
Boolean |
Хранение логических значений: True, False |
Currency |
Хранение чисел для точных вычислений в диапазоне |
Date |
Хранение даты и времени. |
Double |
Хранение чисел двойной точности |
Integer |
Хранение целых чисел от -32768 до 32767 |
Long |
Хранение целых чисел от -2147483648 до 2147483647 |
Single |
Хранение чисел одинарной точности |
String |
Хранение текста длиной до 2 млрд. символов |
Variant |
Хранение любого типа данных |
VBA использует тип Date для хранения дат и времени.
При работе с этим типом данных следует иметь ввиду, что VBA-типы Date не являются такими же типами, как в рабочих листах Excel, хотя во многом и схожи с ними. Например, базовой датой для VBA-типа Date является 30 декабря 1899 года, а в Excel - 1 января 1900 года.
VBA-тип Date является типом последовательных дат. VBA использует отрицательные числа для представления дат ранее базовой даты (30 декабря 1899), и положительные - для дат после базовой. Число 0 представляет саму дату 30.12.1899.
В значении последовательной даты целая часть - это общее число дней от базовой даты. Дробная часть (цифра справа от десятичного знака) - эти цифры обозначают время дня как часть дня. Один час - это 1/24 дня, одна минута - 1/1440 дня, секунда - 1/86400 дня.
Можно вычитать одну дату из другой, добавлять к дате или вычитать числа для изменения ее значения. В VBA имеется несколько встроенных процедур для отдельного извлечения года, месяца, дня, часов, минут и секунд переменной типа Date.
Числа
VBA имеет шесть различных численных типов данных: Byte, Integer, Long, Single, Double, Currency.
Они используются для хранения чисел в различных форматах, в зависимости от конкретного типа.
Целые числаInteger - это целое число без дробной части (целые числа никогда не содержат десятичного знака, даже если десятичная часть равна нулю).
VBA предоставляет три типа целых данных: Byte, Integer, Long.
Byte - наименьший из трех типов целых данных, предназначен для хранения числе от 0 до 255. Этот тип обычно используют для хранения двоичных данных.
Integer использует диапазон целых чисел от -32768 до 32767.
Long использует диапазон целых чисел от -2147483648 до 2147483647.
Byte, Integer, Long типы требуют меньше памяти для хранения чисел, чем другие численные типы данных VBA, а математические операции и операции сравнения над числами указанных типов быстрее, чем эти же операции для численных типов данных с плавающей точкой.
VBA автоматически преобразует данные типов Byte, Integer, Long в текст, когда они выводятся на экран, используя такие процедуры, как MsgBox.
Числа с плавающей точкойЧисла с плавающей точкой могут иметь любое число цифр до или после десятичной точки (в пределах границ конкретного типа данных). Иногда их называют действительными числами. Этот тип данных используют тогда, когда требуется хранить числа, имеющие дробную часть.
VBA имеет два типа данных с плавающей точкой: Single, Double.
Single используется для хранения:
отрицательных чисел от -3,402823*1038 до -1,401298*10-45
и положительных от 1,401298*10-45 до 3,402823*1038.
Числа, хранимые с использованием типа Single, называются числами одинарной точности.
Double используется для хранения:
отрицательных чисел от -1,79769313486232*10308 до -4,94065645841247*10-324
и положительных от 4,94065645841247*10-324 до 1,79769313486232*10308.
Числа, хранимые с использованием типа Double, называются числами двойной точности.
Следует иметь ввиду, что операции, выполняемые над числами с плавающей точкой, немного медленнее подобных операций над другими численными типами данных. Кроме того, числа, хранимые как типы данных с плавающей точкой, могут быть подвержены ошибкам округления. Если число с плавающей точкой очень большое или очень малое, VBA отображает его в экспоненциальном представлении.
В экспоненциальном представлении значения записываются без начальных и конечных нулей, и слева от десятичного знака имеется только одна цифра. Число умножается на 10 в некоторой степени, чтобы показать, где на самом деле находится десятичный знак. Следует помнить, что отрицательная степень приводит в результате к меньшему числу, а положительная - к большему. Вместо надстрочного символа показателя степени используется буква Е:
4.1Е3=4100
2.01Е-2=0.0201
Это число с фиксированной точкой, т.е., десятичная точка всегда находится в одном и том же месте - справа от точки всегда имеются четыре цифры. Этот тип данных используется при денежных вычислениях, когда требуется высокая точность.
Currency хранит числа в диапазоне от -922337203685477,5808 до 922337203685477,5807.
Текстовые строкиЛюбые текстовые данные, сохраняемые в VBA, называются строками. Для их хранения предназначен тип данных String.
Строка может содержать текстовые символы любых типов: буквы, цифры, знаки пунктуации, разделительные символы и пр.
Строки всегда заключаются в двойные кавычки.
Существует две категории строк: строки переменной длины и строки фиксированной длины. По умолчанию в VBA все строки переменной длины.
Следует сказать, что тип данных String является очень важным типом, т.к., как правило, информация, вводимая пользователем - это строковые данные. Кроме того, поскольку на экране монитора отображается только текст, то все другие типы данных должны быть преобразованы в строковые данные перед выводом на экран.
Логические значенияVBA-программа принимает то или иное "решение", основываясь на различных условиях. Любое условие может принимать два значения: True (Истина) или False(Ложь). Логические значения True и False называются булевскими значениями, а тип данных - Boolean.
Булевские значения получают как результат операции сравнения. Операции сравнения имеет место при сравнении одного с другим, например, при сравнении двух чисел для определения, которое из них больше.
Тип данных VariantЭто особый тип данных, который может сохранять любые типы, за исключением типа Object. VBA использует этот тип данных для всех переменных, если только они не объявлены явно.
Данные типа Variant принимают характеристики определенного типа, который они сохраняют в данный момент. Например, если данные типа Variant содержат строковые данные, Variant принимает характеристики типа String. VBA использует для данных типа Variant наиболее компактное представление, возможное для конкретных значений, находящихся в данных.
Несмотря на то, что типы Variant удобны и избавляют от некоторой части работы при написании кода, они требуют большего объема памяти, чем любой другой тип данных, за исключением больших строк. Кроме того, математические операции и операции сравнения над данными типа Variant выполняются медленнее, чем подобные операции над данными любого другого типа. Следует избегать использования переменных Variant.
Теоретическое описание типов данных взято с сайта: http://www.on-line-teaching.com/vba/lsn007.html