Лекция 9(5) Программирование на VBA
.pdf«Разные мелочи»
Перенос строки кода в программе на новую строку
<Пробел> + <Знак подчеркивания>
MsgBox “ha=“ & str(ha) & chr(13) & “hb=“ & str(hb) _ & chr(13) &“hc=“ & str (hc)
Перенос строки кода
Конкатенация строк- это объединение нескольких строк в одну. Для объединения используется символ «амперсанд» & или символ «сложения» +.
При объединении строк вторая строка добавляется в конец первой.
Лекция 9. Информатика, часть 2 |
11 |
Операции VBA
Математические –выполняются над числами, их результатом
являются числа. Стандартный набор операций: + , -, *, / , \ (целочисленное деление), ^ (возведение в степень).
Операции Отношения -применяются не только к числам, их результат логические значения. Стандартный набор: >, >=, <, <=, <>, = - сравнение двух операндов.
Логические – применяются логическими выражениями и их результатом являются логические значения. Стандартный набор: and (логическое умножение), or (логическое сложение), not (логическое отрицание)
Приоритет: функции, действия в скобках, ^, * и /, \ (деление нацело), + и - , > < = , Not, And, Or.
Лекция 9. Информатика, часть 2 |
12 |
Встроенные функции
Использование функций упрощает программирование.
•Математические
•Проверки типов
•Преобразование
форматов
•Обработки строк
•Времени и даты
•Финансовые
Некоторые математические
функции
Abs(x) –модуль х Sin(x) – синус х
Sqr(x) – квадратный корень Cos(x) – косинус х
Log(x) – натуральный логарифм х Exp(x) – экспонента х (ех)
Int(x) – целая часть числа х
Лекция 9. Информатика, часть 2 |
13 |
Функции преобразования типов-
преобразуют переменные одного типа в другой тип
Преобразование символов
вчисло – функция Val( )
у=Val( x )
Преобразование числа в символы – функция Str( )
x = str( y )
Другие функции
преобразования типов
Функция |
Тип, в который |
|
• |
|
преобразуется выражение |
CBool |
Boolen |
|
• |
CByte |
Byte |
• |
CDate |
Date |
• |
CInt |
Integer |
• |
CStr |
String |
• |
CSng |
Single |
•Cvar Variant Примеры
a= CByte(b) d=CDate(t)
Лекция 9. Информатика, часть 2 |
14 |
Форматирование чисел
представляет число в заданной форме или как дату, время, денежное значение
Пользовательский формат – позволяет настроить вид отображаемых
значений так, как желает пользователь.
Format (Переменная или Выражение, Формат )
C=1,253647 –переменная |
|
Формат |
Результат |
Format(C, “##.### “) |
1.253 |
Format(Sin(1)*Exp(5), “#.###e+##”) |
1.29E+2 |
Format( Now, “hh:mm:ss”) |
18:57:23 |
Format( Now, “dd/mm/yyyy) |
24/04/2006 |
Специальная функция форматирования чисел
FormatNumber (Переменная или выражение, Количество знаков после запятой)
Формат |
Результат |
FormatNumber( Sin(4), 3) |
-0,757 |
FormatNumber( C, 2) |
1.25 |
Лекция 9. Информатика, часть 2 |
15 |
Оператор присвоения
•Присваивает значение выражения переменной, константе или
свойству. Всегда включает знак равенства (=)
Имя переменной = Выражение
Оператор предписывает выполнить выражение и присвоить его результат переменной. Например
х=2
х= х+2
•Используется для присваивания переменной ссылки на объект. Применяется ключевое слово Set . В примерепеременной r присваивается ссылка на ячейку А1 и через эту переменную в ячейку А1 вводится значение.
Dim r As Range
Set r = Range (“A1”) r. Value = 3
В общем случае инструкция Set имеет такой синтаксис
Set Имя переменной = Выражение
Лекция 9. Информатика, часть 2 |
16 |
Оператор With
Позволяет не повторять многократно имя объекта. Структурирует текст программы.
Пример. Изменить свойства ячейки А1
Без использования With
Range(“A1”).Value =3 Range(“A1”) . Font . Italic = True
Установлено значение А1, равной 3 и шрифт – «курсив»
С использованием With
With Range(“A1”)
.Value=3
.Font . Italic=True End With
Лекция 9. Информатика, часть 2 |
17 |
Оператор With
Примеризменение формата ячейки
Range(“A1”).Value =3
Range(“A1”) . Font . Italic = True Range(“A1”). Font . Size = 12 Range(“A1”). Font.ColorIndex =3
Установлено значение А1, равной 3, шрифт – «курсив», высота шрифта 12, цвет красный
With Range(“A1”)
.Value=3
With . Font
. Italic=True
. Size = 12
. ColorIndex =3
End With End With
Лекция 9. Информатика, часть 2 |
18 |
Операторы управления:
перехода и выбора (GoTo, If, Select), повтора (For, For Each, Do Loop, While)
Оператор условного перехода – задает выполнение
определенных групп инструкций в зависимости от значения логического выражения
1 вариант записи If условие Then
выполняются операторы, если условие истина Else
выполняются операторы, если условие ложно end if
2 вариант записи
if условие Then операторы Else операторы
Если оператор набирается в одну строку , то end if не ставится. Ветвь Else является необязательной.
Лекция 9. Информатика, часть 2 |
19 |
ПРИМЕР: Вычислить Скидку=5%, которая применима только к
Суммам больше 1000, в противном случае Скидка=0.
1 вариант записи
If Сумма>1000 Then
|
Да |
|
Нет |
|
|
|
Сумма>1000 |
||
|
|
|
|
|
Скидка = 0.05 |
|
Скидка = 0 |
||
|
|
|
|
|
|
|
|
|
|
Скидка = 0.05
Else
Скидка =0
end if
2 вариант записи
If Сумма>1000 Then Скидка = 0.05 Else Скидка =0
Лекция 9. Информатика, часть 2 |
20 |