Обратная связь
|
Краткие сведения о математических функциях в VBA и Паскале
Математическое обозначение функции, название (и пояснение)
| Идентификатор функции
| VBA
| Паскаль
| – Абсолютная величина (модуль)
| abs(x)
| – Корень квадратный из х
| sqr(x)
| sqrt(x)
| – Экспонента х (число е≈2.72 - основание натурального логарифма)
| exp(x)
| – Натуральный логарифм х
| log(x)
| ln(x)
| – Логарифм х по основанию а
| log(x)/log(a)
| ln(x)/ln(a)
| – Синус х
| sin(x)
| – Косинус х
| cos(x)
| – Тангенс х
| tan(x)
| – Арктангенс х
| atn(x)
| arctan(x)
| Случайное число в диапазоне от 0 до 1
| rnd
| rаndom
| Округление аргумента до целого значения
| round(x)
| Целая часть х (т.е. максимальное целое число, не превосходящее х)
| int(x)
| - Знак числа x ( -1, при х<0; 0, при x=0; 1, если x>0)
| sgn(x)
|
|
11.7 Функции обработки строк *
Помимо математических, в VBA имеется множество встроенных функций, работающих со строковыми типами данных. Такие функции часто используются при автоматизированном создании и преобразовании документов, обработке текстовых файлов. Синтаксис некоторых строковых функций VBA, их описание и примеры использования представлены в таблице 23.
Дополнительных пояснений требуют две последние функции таблицы 9, использующие параметр способ. Если этот необязательный аргумент* равен 0 или опущен, то выполняется двоичное сравнение. А если равен 1 – посимвольное сравнение без учета регистра. Если хоть одна из строк имеет значение Null (пустое значение, которое не следует путать с пустой строкой), то результат вызова функции также равен Null.
Таблица 23
Краткие сведения о строковых функциях
Синтаксис функции
| Описание функции
| Пример
| Вызов функции
| Результат
|
|
|
|
| LСase(строка)
| Возвращает строку, преобразуя её к нижнему регистру
| LСase("xYz")
| "xyz"
| UСase(строка)
| Возвращает строку, преобразуя её к верхнему регистру
| UСase("xYz")
| "XYZ"
| Trim(строка)
| Возвращает строку, удаляя из неё пробелы справа и слева (в начале и конце строки)
| Trim(" xy z ")
| "xy z"
| LTrim(строка)
| Возвращает строку, удаляя из неё начальные пробелы
| LTrim(" xz ")
| "xz "
| RTrim(строка)
| Возвращает строку, удаляя из неё конечные пробелы
| RTrim(" xz ")
| " xz"
| Left(строка, количество)
| Возвращает левую часть строки из указанного количества символов
| Left("123",2)
| "12"
| Right(строка, количество)
| Возвращает правую часть строки из указанного количества символов
| Right("123",2)
| "23"
| Mid(строка, позиция[, количество])
| Возвращает среднюю часть строки, начиная с заданной позиции, из указанного количества символов (если параметр опущен, то – до конца)
| Mid("123",2,1)
Mid("123",2)
| "2"
"23"
| Space(количество)
| Создает строку, содержащую равное аргументу количество пробелов
| Space(1)
| " "
| String(количество, символ)
| Создает строку, содержащую заданное количество повторяющихся символов (этот аргумент представляется как числовым кодом символа, так и строковым выражением, первый символ которого используется для создания результирующей строки)
| String(3, 120)
String(3, "хyz")
| "ххх"
"ххх"
| StrComp(строка1, строка2[, способ])
| Возвращает результат сравнения строки1 со строкой2 заданным способом. Если строка2 меньше чем строка1, то возвращается 1; наоборот – -1; при равенстве – 0;
| StrComp("xYz", "хyz")
StrComp("xYz", "хyz", 1)
| -1
| InStr([позиция, ]строка1, строка2[, способ])
| Поиск строки2 (подстроки), внутри строки1, начиная со стартовой позиции (если не указано, то с начала) строки1, заданным способом.
| InStr ("xYz", "хyz")
InStr (1, "xYz", "хyz", 1)
|
|
Следует также пояснить, что функция InStr возвращает позицию первого вхождения (если совпадение найдено). Если строка2 – пустая, то возвращается стартовая позиция. Возвращаемое значение будет равно нулю в следующих случаях: строка1 – пустая; строка2 не найдена; стартовая позиция превышает длину строки1.
|
|