Работа с текстом в коде VBA Excel. Функции, оператор & и другие ключевые слова для работы с текстом. Примеры использования некоторых функций и ключевых слов.
Функции для работы с текстом
Основные функции для работы с текстом в VBA Excel:
| Функция | Описание |
|---|---|
| Asc(строка) | Возвращает числовой код символа, соответствующий первому символу строки. Например: MsgBox Asc(«/Stop»). Ответ: 47, что соответствует символу «/». |
| Chr(код символа) | Возвращает строковый символ по указанному коду. Например: MsgBox Chr(47). Ответ: «/». |
| Format(Expression, [FormatExpression], [FirstDayOfWeek], [FirstWeekOfYear]) | Преобразует число, дату, время в строку (тип данных Variant (String)), отформатированную в соответствии с инструкциями, включенными в выражение формата. Подробнее… |
| InStr([начало], строка1, строка2, [сравнение]) | Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с начала строки. Подробнее… |
| InstrRev(строка1, строка2, [начало, [сравнение]]) | Возвращает порядковый номер символа, соответствующий первому вхождению одной строки (строка2) в другую (строка1) с конца строки. Подробнее… |
| Join(SourceArray,[Delimiter]) | Возвращает строку, созданную путем объединения нескольких подстрок из массива. Подробнее… |
| LCase(строка) | Преобразует буквенные символы строки в нижний регистр. |
| Left(строка, длина) | Возвращает левую часть строки с заданным количеством символов. Подробнее… |
| Len(строка) | Возвращает число символов, содержащихся в строке. |
| LTrim(строка) | Возвращает строку без начальных пробелов (слева). Подробнее… |
| Mid(строка, начало, [длина]) | Возвращает часть строки с заданным количеством символов, начиная с указанного символа (по номеру). Подробнее… |
| Replace(expression, find, replace, [start], [count], [compare]) | Возвращает строку, полученную в результате замены одной подстроки в исходном строковом выражении другой подстрокой указанное количество раз. Подробнее… |
| Right(строка, длина) | Возвращает правую часть строки с заданным количеством символов. Подробнее… |
| RTrim(строка) | Возвращает строку без конечных пробелов (справа). Подробнее… |
| Space(число) | Возвращает строку, состоящую из указанного числа пробелов. Подробнее… |
| Split(Expression,[Delimiter],[Limit],[Compare]) | Возвращает одномерный массив подстрок, извлеченных из указанной строки с разделителями. Подробнее… |
| StrComp(строка1, строка2, [сравнение]) | Возвращает числовое значение Variant (Integer), показывающее результат сравнения двух строк. Подробнее… |
| StrConv(string, conversion) | Изменяет регистр символов исходной строки в соответствии с заданным параметром «conversion». Подробнее… |
| String(число, символ) | Возвращает строку, состоящую из указанного числа символов. В выражении «символ» может быть указан кодом символа или строкой, первый символ которой будет использован в качестве параметра «символ». Подробнее… |
| StrReverse(строка) | Возвращает строку с обратным порядком следования знаков по сравнению с исходной строкой. Подробнее… |
| Trim(строка) | Возвращает строку без начальных (слева) и конечных (справа) пробелов. Подробнее… |
| UCase(строка) | Преобразует буквенные символы строки в верхний регистр. |
| Val(строка) | Возвращает символы, распознанные как цифры с начала строки и до первого нецифрового символа, в виде числового значения соответствующего типа. Подробнее… |
| WorksheetFunction.Trim(строка) | Функция рабочего листа, которая удаляет все лишние пробелы (начальные, конечные и внутренние), оставляя внутри строки одиночные пробелы. |
В таблице перечислены основные функции VBA Excel для работы с текстом. С полным списком всевозможных функций вы можете ознакомиться на сайте разработчика.
Ключевые слова для работы с текстом
| Ключевое слово | Описание |
|---|---|
| & | Оператор & объединяет два выражения (результат = выражение1 & выражение2). Если выражение не является строкой, оно преобразуется в Variant (String), и результат возвращает значение Variant (String). Если оба выражения возвращают строку, результат возвращает значение String. |
| vbCrLf | Константа vbCrLf сочетает в себе возврат каретки и перевод строки (Chr(13) + Chr(10)) и переносит последующий текст на новую строку (результат = строка1 & vbCrLf & строка2). |
| vbNewLine | Константа vbNewLine в VBA Excel аналогична константе vbCrLf, также сочетает в себе возврат каретки и перевод строки (Chr(13) + Chr(10)) и переносит текст на новую строку (результат = строка1 & vbNewLine & строка2). |
Примеры
Вывод прямых парных кавычек
Прямые парные кавычки в VBA Excel являются спецсимволами и вывести их, заключив в самих себя или в одинарные кавычки (апострофы), невозможно. Для этого подойдет функция Chr:
|
Sub Primer1() ‘Вывод одной прямой парной кавычки MsgBox Chr(34) ‘Отображение текста в прямых кавычках MsgBox Chr(34) & «Волга» & Chr(34) ‘Вывод 10 прямых парных кавычек подряд MsgBox String(10, Chr(34)) End Sub |
Смотрите интересное решение по выводу прямых кавычек с помощью прямых кавычек в первом комментарии.
Отображение слов наоборот
Преобразование слова «налим» в «Милан»:
|
Sub Primer2() Dim stroka stroka = «налим» stroka = StrReverse(stroka) ‘милан stroka = StrConv(stroka, 3) ‘Милан MsgBox stroka End Sub |
или одной строкой:
|
Sub Primer3() MsgBox StrConv(StrReverse(«налим»), 3) End Sub |
Преобразование слова «лето» в «отель»:
|
Sub Primer4() Dim stroka stroka = «лето» stroka = StrReverse(stroka) ‘отел stroka = stroka & «ь» ‘отель MsgBox stroka End Sub |
или одной строкой:
|
Sub Primer5() MsgBox StrReverse(«лето») & «ь» End Sub |
Печатная машинка
Следующий код VBA Excel в замедленном режиме посимвольно печатает указанную строку на пользовательской форме, имитируя печатную машинку.
Для реализации этого примера понадобится пользовательская форма (UserForm1) с надписью (Label1) и кнопкой (CommandButton1):
Код имитации печатной машинки состоит из двух процедур, первая из которых замедляет выполнение второй, создавая паузу перед отображением очередного символа, что и создает эффект печатающей машинки:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
Sub StopSub(Pause As Single) Dim Start As Single Start = Timer Do While Timer < Start + Pause DoEvents Loop End Sub Private Sub CommandButton1_Click() Dim stroka As String, i As Byte stroka = «Печатная машинка!» Label1.Caption = «» For i = 1 To Len(stroka) Call StopSub(0.25) ‘пауза в секундах ‘следующая строка кода добавляет очередную букву Label1.Caption = Label1.Caption & Mid(stroka, i, 1) Next End Sub |
Обе процедуры размещаются в модуле формы. Нажатие кнопки CommandButton1 запустит замедленную печать символов в поле надписи, имитируя печатную машинку.
Аннотация: Лекция посвящена описанию основных конструкций и принципов VBA. Подробно обсуждаются стандартные встроенные функции VBA и пользовательские процедуры и функции.
6.1. Встроенные математические функции
06-01-Математика.docm — пример к п. 6.1.
Вы хотите вычислить квадратный корень, округлить число или сделать с ним еще что-нибудь подобное? Для этого VBA имеет специализированные функции, вы можете найти их в табл. 6.1.
| Функция | Описание |
|---|---|
| Abs | Абсолютное значение |
| Atn | Арктангенс |
| Cos | Косинус числа |
| Exp | Возвращает число e (2.718282), возведенное в степень аргумента функции. |
| Fix | Отбрасывает дробную часть числа и возвращает целую. В результате для положительных чисел получается число меньшее, чем входное (Fix(2.5) возвратит 2), для отрицательных — большее (Fix(-2.5) возвратит -2) |
| Int | Отбрасывает дробную часть числа и возвращает целую. Для положительных получается число меньшее введенного (Int(2.5) возвратит 2), для отрицательных — так же меньшее (Int(-2.5) возвратит -3). |
| Log | Возвращает натуральный логарифм числа |
| Rnd | Возвращает случайное число типа Single, причем, это число находится между 0 и 1. Для инициализации генератора случайных чисел используйте директиву Randomize — ее надо вызвать до вызова Rnd. |
| Sgn | Функция предназначена для определения знака числа. Если число положительное — она возвращает 1. Для нуля функция возвратит 0, для отрицательного числа -1. |
| Sin | Синус |
| Sqr | Квадратный корень |
| Tan | Тангенс |
Давайте рассмотрим пример. Добавим в документ Microsoft Word кнопку, назовем ее cmd_Calc, надпишем ее как Вычисления и добавим следующий код (листинг 6.1.), иллюстрирующий работу рассмотренных функций.
Dim dblNumber As Double
'Переменная, используемая в вычислениях
Dim varResult
'Переменная типа Variant
dblNumber = Val(InputBox("Введите число"))
'Вычисляем абсолютное значение введенного числа
'Сначала присвоим результат переменной varResult
'Далее - выведем подписанный результат в окне
'сообщения, воспользуемся знаком "+" для
'конкатенации строк, в других случаях
'будем вызывать функции непосредственно
'в MsgBox'e
'Обратите внимание на то, что мы конвертируем
'числовые значения в строки с помощью функции Str
varResult = Abs(dblNumber)
MsgBox ("Абсолютное значение " + _
Str(dblNumber) + " равняется " + Str(varResult))
'Арктангенс
MsgBox ("Арктангенс " + _
Str(dblNumber) + " равняется " + _
Str(Atn(dblNumber)))
'Косинус
MsgBox ("Косинус " + _
Str(dblNumber) + " равняется " + _
Str(Cos(dblNumber)))
'e в степени введенного числа
MsgBox ("Число e в степени " + _
Str(dblNumber) + " равняется " + _
Str(Exp(dblNumber)))
'Функция Fix
MsgBox ("Результат работы функции Fiх для " + _
Str(dblNumber) + " равняется " + _
Str(Fix(dblNumber)))
'Функция Int
MsgBox ("Результат работы функции Int для " + _
Str(dblNumber) + " равняется " + _
Str(Int(dblNumber)))
'Натуральный логарифм
MsgBox ("Натуральный логарифм " + _
Str(dblNumber) + " равняется " + _
Str(Log(dblNumber)))
'Получим несколько случайных чисел
'первое число - от 0 до 1
'второе - от 0 до 10.
'Третье - от 25 до 100
'Четвертое - целое от 0 до 34
Randomize
MsgBox ("Группа случайных чисел: " + _
Str(Rnd()) + ", " + _
Str(Rnd() * 10) + ", " + _
Str(Rnd() * 75 + 25) + ", " + _
Str(Int(Rnd() * 34)))
'Функция Sgn
MsgBox ("Результат работы Sgn для " + _
Str(dblNumber) + " равняется " + _
Str(Sgn(dblNumber)))
'Cинус
MsgBox ("Синус " + _
Str(dblNumber) + " равняется " + _
Str(Sin(dblNumber)))
'Квадратный корень
MsgBox ("Квадратный корень " + _
Str(dblNumber) + " равняется " + _
Str(Sqr(dblNumber)))
'Тангенс
MsgBox ("Тангенс " + _
Str(dblNumber) + " равняется " + _
Str(Tan(dblNumber)))
Листинг
6.1.
Обработчик события Click кнопки cmd_Calc
Обратите внимание на алгоритм получения случайного числа, находящегося в определенном диапазоне, с помощью функции Rnd. Предположим, нам нужно получить случайное число от 15 до 40. Получим, для начала, число от 0 до 40. Очевидно, что для этого нам понадобится такой вызов: Rnd()*40.
Чтобы «поднять» уровень наименьшего случайного числа, возвращаемого выражением, до 15, сделаем следующее.
Во-первых, вычислим разность 40 и 15 — у нас получится 25. Значит, чтобы получить случайное число от 0 до 25, можно использовать вызов Rnd()*25.
Во-вторых, прибавим к полученному случайному числу 15. Теперь выражение для получения случайного числа от 15 до 40 выглядит так: Rnd()*25+15.
Проверим это высказывание на правильность. Функция Rnd, как известно, возвращает случайные числа от 0 до 1. Если функция возвратит 0 — результат вычисления выражения будет равен 15 (0*25+15). Если функция возвратит 1 — результат будет равен 40 (25*1+15). Промежуточные значения Rnd дадут искомые случайные числа между 15 и 40.
На рис. 6.1. вы можете видеть окно сообщения, содержащее результаты вызовов функции Rnd.
Рис.
6.1.
Окно сообщения, выводящее случайные числа
Выше мы работали, в основном, с числами, теперь поговорим о строковых переменных.
6.2. Строковые функции
06-02-Строковые функции.docm — пример к п. 6.2.
В табл. 6.2. вы можете найти информацию об основных строковых функциях VBA.
| Функция | Описание |
|---|---|
| Len(string) | Возвращает длину строки. Например, длина строки «Добрый день» составляет 11 символов — учитывая пробел. Выходное значение имеет тип Long |
| LCase(string) | Возвращает строку, все символы которой записаны в нижнем регистре. Например, строка «Привет» превратится в «привет» |
| UCase(string) | Возвращает строку, все символы которой записаны в верхнем регистре. Например, для «Привет» мы получим «ПРИВЕТ» |
| String(number, character) | Возвращает строку, состоящую из number символов character |
| Left(string, length) | Возвращает length символов, начиная с первого левого символа строки string |
| Right(string, length) | Возвращает length символов, начиная с самого правого символа строки string |
| LTrim(string) | Возвращает строку, в которой вырезаны все пробелы слева |
| RTrim(string) | Вырезает из строки все пробелы справа |
| Trim(string) | Вырезает из строки все пробелы слева и справа |
| Mid(string, start[, length]) | Вырезает из строки string с позиции start length символов |
| Asc(string) | Возвращает ASCII-код первого символа строки |
| Chr(charcode) | Возвращает символ, соответствующий коду символа |
Работа со строками традиционно считается сложным разделом программирования для начинающих, поэтому проиллюстрируем вышеописанные функции примерами.
Создадим документ Microsoft Word и добавим на него следующие кнопки табл. 6.3.
Обработчик нажатия кнопки cmd_Len (листинг 6.2.) будет содержать решение следующей задачи: сообщить пользователю длину введенного текста. Очевидно, для решения этой задачи нам понадобится функция Len.
'Переменная для хранения входной строки
Dim str_InpStr As String
'Переменная для хранения найденной длины строки
Dim lng_StrLen As Long
str_InpStr = InputBox("Введите строку")
'Вычисляем длину строки
lng_StrLen = Len(str_InpStr)
MsgBox ("Длина введенной строки: _" + _
str_InpStr + "_ равняется " + Str(lng_StrLen) + _
" символам")
Листинг
6.2.
Пример использования функции Len
На рис. 6.2. вы можете видеть результат вычисления длины строки.
Рис.
6.2.
Результат вычисления длины строки
Теперь займемся конверсией символов — функциями LCase и UCase (листинг 6. 3.).
'Переменная для хранения входной строки
Dim str_InpStr As String
'Переменная для хранения измененной строки
Dim str_NewStr As String
str_InpStr = InputBox("Введите текст")
'В str_NewStr окажется введеная строка
'в которой все прописные буквы заменены строчными
str_NewStr = LCase(str_InpStr)
MsgBox ("Измененная строка: " + str_NewStr)
'Теперь в str_NewStr будет та же строка
'в которой все буквы стали прописными
str_NewStr = UCase(str_InpStr)
MsgBox ("Измененная строка: " + str_NewStr)
Листинг
6.3.
Пример использования функций LCase и UCase
На очереди — вырезание символов — функции Mid, LTrim, Rtrim, Left, Right (листинг 6.4.) Среди этих функций наиболее мощной является Mid — используя ее, можно делать со строками очень много всего.
'Переменная для хранения входной строки
Dim str_InpStr As String
'Переменная для хранения вырезанных символов
Dim str_NewStr As String
'Зададим строку, с которой удобно будет работать
str_InpStr = " Здравствуйте, Александр "
'Функции удаления пробелов
'При выводе строки ставим перед ее началом
'и концом символ "_" для того чтобы
'лучше было видно наличие
'или отсутствие пробелов
MsgBox ("Мы работаем с такой строкой: " + _
"_" + str_InpStr + "_")
'LTrim - присваиваем результаты работы
'переменной и выводим информацию в MsgBox
str_NewStr = LTrim(str_InpStr)
MsgBox ("Результат работы LTrim: " + _
"_" + str_NewStr + "_")
'RTrim
MsgBox ("Результат работы RTrim: " + _
"_" + RTrim(str_InpStr) + "_")
'Trim
MsgBox ("Результат работы Trim: " + _
"_" + Trim(str_InpStr) + "_")
'Left - вырезаем из строки str_InpStr 12
'символов предварительно очистив ее
'от начальных пробелов
str_NewStr = Left(LTrim(str_InpStr), 12)
MsgBox ("Первые 12 символов слева: " + _
str_NewStr)
'Right - аналогично Вырезаем 9 символов справа
str_NewStr = Right(RTrim(str_InpStr), 9)
MsgBox ("Первые 9 символов справа: " + _
str_NewStr)
'Функция Mid - для начала выведем по одному символу
'со второй и пятнадцатой позиции строки
'преварительно очищенной от лишних пробелов
'в начале и в конце
str_NewStr = Mid(Trim(str_InpStr), 2, 1)
MsgBox ("Второй символ введенной строки: " + _
str_NewStr)
str_NewStr = Mid(Trim(str_InpStr), 15, 1)
MsgBox ("Пятнадцатый символ введенной строки: " + _
str_NewStr)
'Выведем 5 символов, начиная с 15 символа
str_NewStr = Mid(Trim(str_InpStr), 15, 5)
MsgBox ("Пять символов строки с 15-й позиции: " + _
str_NewStr)
Листинг
6.4.
Пример использования функций для вырезания символов
Теперь рассмотрим примеры работы функций Asc, Chr и функции String. Чтобы работать с функциями Asc и Chr нам нужно познакомиться с понятием таблицы символов ASCII.
ASCII расшифровывается как American Standard Code For Information Intercharge — американский стандартный код для обмена информацией. Каждый символ в ASCII закодирован восьмибитным кодом. В результате получается таблица, в которой каждому управляющему символу, цифре, букве латинского или национального алфавитов сопоставлен свой код. Коды записывают в различных представлениях — в основном — в шестнадцатеричном и десятичном. Мы будем пользоваться десятичной записью.
Мы не будем приводить здесь таблицу ASCII полностью, приведем лишь некоторые полезные коды и диапазоны кодов.
Коды в диапазоне 0-31 имеют управляющие символы. Символ возврата каретки (тот самый, который вставляется в документ при нажатии клавиши Enter ) имеет код 13.
Коды в диапазоне 32-127 имеют латинские символы, цифры, знаки препинания — эта часть таблицы остается постоянной для различных кодовых таблиц. Например, пробел имеет код 32, точка — 46. Диапазон 48-57 занимают цифры от 0 до 9, диапазон 65-90 занимают заглавные латинские буквы от A до Z, диапазон 97-122 — строчными буквы a-z.
В диапазоне 128-225 расположены символы национальной кодировки. В русифицированных версиях MS Windows обычно применяется кодовая страница MS Windows 1251. В ней коды 192-223 имеют заглавные буквы от А до Я, 224-255 — строчные буквы от а до я.
Используя коды символов можно вводить в документы (или записывать в файлы, создаваемые программно) символы, которые нельзя ввести с клавиатуры.
В коде обработчика Click для cmd_Asc создадим программу (листинг 6.5.), которая сначала запрашивает у пользователя ввод символа, после чего выводит его ASCII код, потом — ввод кода, после чего выводит соответствующий ему символ. Так же здесь мы посмотрим на то, как работает функция String:
'Переменная для хранения кода символа
Dim num_AscNumber
'Переменная для хранения символа
Dim str_Char
'Начало блока перевода кода в символ
num_AscNumber = Val(InputBox("Введите код символа"))
'В переменной str_Char теперь хранится символ
'с кодом num_AscNumber
str_Char = Chr(num_AscNumber)
MsgBox (str_Char + " - символ с кодом " + _
Str(num_AscNumber))
'Начало блока перевода символа в код
str_Char = InputBox("Введите символ")
'Теперь в переменной num_AscNumber хранится
'Код символа, введенного в str_Char
num_AscNumber = Asc(str_Char)
MsgBox ("Символу " + str_Char + " соответствует код" + _
Str(num_AscNumber))
'А теперь - пример функции String.
'выведем в окне сообщения 15 символов *
MsgBox ("15 символов *: " + String(15, "*"))
Листинг
6.5.
Пример использования функций Chr, Asc, String
На чтение 6 мин Опубликовано 15.12.2015
Содержание
- Операторы Excel VBA
- Математические операторы
- Строковые операторы
- Операторы сравнения
- Логические операторы
- Встроенные функции
Операторы Excel VBA
При написании кода VBA в Excel набор встроенных операторов используют на каждом шагу. Эти операторы делятся на математические, строковые, операторы сравнения и логические. Далее мы подробно рассмотрим каждую группу операторов.
Математические операторы
Основные математические операторы VBA перечислены в таблице ниже.
В правом столбце таблицы указан приоритет операторов, принятый по умолчанию при отсутствии скобок. Добавляя в выражение скобки, можно изменять порядок выполнения операторов VBA по своему желанию.
| Оператор | Действие | Приоритет (1 — высший; 5 — низший) |
|---|---|---|
| ^ | Оператор возведения в степень | 1 |
| * | Оператор умножения | 2 |
| / | Оператор деления | 2 |
| Оператор деления без остатка – возвращает результат деления двух чисел без остатка. Например, 74 возвратит результат 1 | 3 | |
| Mod | Оператор модуля (остатка) – возвращает остаток от деления двух чисел. Например, 8 Mod 3 возвратит результат 2. | 4 |
| + | Оператор сложения | 5 |
| — | Оператор вычитания | 5 |
Строковые операторы
Основной строковый оператор в Excel VBA – это оператор конкатенации & (слияние):
| Оператор | Действие |
|---|---|
| & | Оператор конкатенации. К примеру, выражение «A» & «B» возвратит результат AB. |
Операторы сравнения
Операторы сравнения используются для сравнения двух чисел или строк и возвращают логическое значение типа Boolean (True или False). Основные операторы сравнения Excel VBA перечислены в этой таблице:
| Оператор | Действие |
|---|---|
| = | Равно |
| <> | Не равно |
| < | Меньше |
| > | Больше |
| <= | Меньше либо равно |
| >= | Больше либо равно |
Логические операторы
Логические операторы, как и операторы сравнения, возвращают логическое значение типа Boolean (True или False). Основные логические операторы Excel VBA перечислены в таблице ниже:
| Оператор | Действие |
|---|---|
| And | Операция конъюнкции, логический оператор И. Например, выражение A And B возвратит True, если A и B оба равны True, в противном случае возвратит False. |
| Or | Операция дизъюнкции, логический оператор ИЛИ. Например, выражение A Or B возвратит True, если A или B равны True, и возвратит False, если A и B оба равны False. |
| Not | Операция отрицания, логический оператор НЕ. Например, выражение Not A возвратит True, если A равно False, или возвратит False, если A равно True. |
В приведённой выше таблице перечислены не все логические операторы, доступные в VBA. Полный список логических операторов можно найти на сайте Visual Basic Developer Center.
Встроенные функции
В VBA доступно множество встроенных функций, которые могут быть использованы при написании кода. Ниже перечислены некоторые из наиболее часто используемых:
| Функция | Действие | ||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Abs | Возвращает абсолютную величину заданного числа.
Пример:
|
||||||||||||||||||||||
| Chr | Возвращает символ ANSI, соответствующий числовому значению параметра.
Пример:
|
||||||||||||||||||||||
| Date | Возвращает текущую системную дату. | ||||||||||||||||||||||
| DateAdd | Добавляет определённый временной интервал к заданной дате. Синтаксис функции:
Где аргумент интервал определяет тип временного интервала, добавляемого к заданной дате в количестве, указанном в аргументе число. Аргумент интервал может принимать одно из следующих значений:
Пример:
|
||||||||||||||||||||||
| DateDiff | Вычисляет количество определённых временных интервалов между двумя заданными датами.
Пример:
|
||||||||||||||||||||||
| Day | Возвращает целое число, соответствующее дню месяца в заданной дате.
Пример: Day(«29/01/2015») возвращает число 29. |
||||||||||||||||||||||
| Hour | Возвращает целое число, соответствующее количеству часов в заданном времени.
Пример: Hour(«22:45:00») возвращает число 22. |
||||||||||||||||||||||
| InStr | Принимает в качестве аргументов целое число и две строки. Возвращает позицию вхождения второй строки внутри первой, начиная поиск с позиции, заданной целым числом.
Пример:
Примечание: Аргумент-число может быть не задан, в таком случае поиск начинается с первого символа строки, заданной во втором аргументе функции. |
||||||||||||||||||||||
| Int | Возвращает целую часть заданного числа.
Пример: Int(5.79) возвращает результат 5. |
||||||||||||||||||||||
| Isdate | Возвращает True, если заданное значение является датой, или False – если датой не является.
Пример:
|
||||||||||||||||||||||
| IsError | Возвращает True, если заданное значение является ошибкой, или False – если ошибкой не является. | ||||||||||||||||||||||
| IsMissing | В качестве аргумента функции передаётся имя необязательного аргумента процедуры. IsMissing возвращает True, если для рассматриваемого аргумента процедуры не передано значение. | ||||||||||||||||||||||
| IsNumeric | Возвращает True, если заданное значение может быть рассмотрено как число, в противном случае возвращает False. | ||||||||||||||||||||||
| Left | Возвращает заданное количество символов от начала переданной строки. Синтаксис функции вот такой:
где строка – это исходная строка, а длина – количество возвращаемых символов, считая от начала строки. Пример:
|
||||||||||||||||||||||
| Len | Возвращает количество символов в строке.
Пример: Len(«абвгдеж») возвращает число 7. |
||||||||||||||||||||||
| Month | Возвращает целое число, соответствующее месяцу в заданной дате.
Пример: Month(«29/01/2015») возвращает значение 1. |
||||||||||||||||||||||
| Mid | Возвращает заданное количество символов из середины переданной строки. Синтаксис функции:
Mid(строка, начало, длина) где строка – это исходная строка, начало – позиция начала извлекаемой строки, длина – количество символов, которые требуется извлечь. Пример:
|
||||||||||||||||||||||
| Minute | Возвращает целое число, соответствующее количеству минут в заданном времени.Пример: Minute(«22:45:15») возвращает значение 45. | ||||||||||||||||||||||
| Now | Возвращает текущую системную дату и время. | ||||||||||||||||||||||
| Right | Возвращает заданное количество символов от конца переданной строки. Синтаксис функции:
Right(строка, длина) Где строка – это исходная строка, а длина – это количество символов, которые надо извлечь, считая от конца заданной строки. Пример:
|
||||||||||||||||||||||
| Second | Возвращает целое число, соответствующее количеству секунд в заданном времени.
Пример: Second(«22:45:15») возвращает значение 15. |
||||||||||||||||||||||
| Sqr | Возвращает квадратный корень числовой величины, переданной в аргументе.
Пример:
|
||||||||||||||||||||||
| Time | Возвращает текущее системное время. | ||||||||||||||||||||||
| Ubound | Возвращает верхний индекс измерения заданного массива.
Примечание: Для многомерных массивов в качестве необязательного аргумента может быть указано, индекс какого именно измерения нужо возвратить. Если не указано, то по умолчанию равно 1. |
||||||||||||||||||||||
| Year | Возвращает целое число, соответствующее году в заданной дате.Пример: Year(«29/01/2015») возвращает значение 2015. |
Данный список включает в себя только избранные наиболее часто употребляемые встроенные функции Excel Visual Basic. Исчерпывающий список функций VBA, доступных для использования в макросах Excel, можно найти на сайте Visual Basic Developer Center.
Оцените качество статьи. Нам важно ваше мнение:



