|
Лекции VBA. Можно выделить следующие разновидности макросов
Строковые функции Строковые функции VBA часто применяются для нахождения заданных строк внутри других строк, для сравнения одной строки с другой и копирования выбранных частей строк. Строковые функции VBA используются довольно часто, потому что строковые данные очень важны и встречаются в каждом приложении VBA — Word, Excel, Access или другом host-приложении VBA. Часто необходимо манипулировать строковыми данными, полученными как пользовательский ввод функцией InputBox. В других случаях строковые данные появляются в коде VBA как имена файлов для документов Word, рабочих книг Excel, баз данных Access и других типов данных, сохраняемых в файлах на дисках.
В Word важность манипулирования строковыми данными очевидна: данные, сохраняемые в документах Word, в основном являются ничем иным, как строковыми данными. Строковые данные также важны в Excel в качестве имен рабочих листов, именованных диапазонов данных и так далее. В этом разделе приводятся имеющиеся в VBA строковые функции; в последующем разделе более подробно описывается, как использовать наиболее важные и полезные строковые функции.
В табл. 5, где приведены основные строковые функции VBA, N — это любое допустимое численное выражение, a S — это любое допустимое строковое выражение. Все аргументы функций являются обязательными, если не указано иначе.
Таблица 6
Функция(аргумент)
| Возвращает/действие
| InStr([Nl,] S1, S2[, N2])
| Возвращает положение S2 в S1. N1 — начальное положение для поиска; N2 определяет тип сравнения. N1 и N2 необязательны. Если N2
опускается, то для поиска используется текущая установка Option Compare.
| InStrRev(Sl, S2 [, Nl[, N2]])
| Возвращает позицию появления строки S2 внутри S1, в направлении от конца (или N1) к началу строки. N2 определяет тип сравнения. Если N2
опускается, то для поиска используется текущая установка Option Compare.
| LCase(S)
| Возвращает строку (тип String), содержащую копию
S со всеми символами верхнего регистра, преобразованными в символы нижнего регистра.
| Left(S, N)
| Возвращает строку; копирует N символов из S, начиная с левого крайнего символа S.
| Len(S)
| Возвращает число символов в S, включая начальные и конечные пробелы.
| LTrim(S)
| Возвращает копию строки S после удаления
символов пробела из левой части строки (начальные пробелы).
| Mid(S, N1, N2)
| Возвращает строку; копирует N2 символов из S, начиная с позиции символа в S, заданной аргументом N1. N2 является необязательным; если N2 опущен, то Mid возвращает все символы в строке
S от позиции N1 до конца строки.
| Right(S, N)
| Возвращает значение типа String; копирует N символов из S, начиная с правого крайнего символа
S. Например, Right( outright , 5) возвращает строку right .
| RTrim(S)
| Возвращает копию строки S после удаления
символов пробела из правой части строки (конечные символы).
| Space(N)
| Возвращает строку пробелов длиной N символов.
| StrComp(Sl, S2, N)
| Сравнивает S1 с S2 и возвращает число, обозначающее результат сравнения: -1, если S1 < S2; 0, если S1 = S2; и 1, если S1 > S2. N является необязательным и указывает, следует ли выполнять сравнение с учетом регистра. Если N опускается,
строки сравниваются с использованием текущей установки Option Compare.
| StrConv(S, N)
| Возвращает строку, преобразованную в новую форму в зависимости от числового кода, заданного аргументом N. VBA предоставляет внутренние константы для использования с функцией StrConv; наиболее полезными являются: vbProperCase (преобразует строку так, что каждая буква, начинающая слово, становится заглавной),
vbLowerCase (преобразует строку в буквы нижнего регистра) и vbUpperCase (преобразует строку в
|
| буквы верхнего регистра).
| String(N, S)
| Возвращает строку длиной N символов, состоящую
из символа, заданного первым символом в S. Например, String(5, "x") возвращает строку "ххххх".
| Trim(S)
| Возвращает копию строки S после удаления
начальных и конечных символов пробела из этой строки.
| UCase(S)
| Возвращает S со всеми символами нижнего
регистра, преобразованными в символы верхнего регистра.
| Несколько перечисленных в табл. 5 функций преобразования типа данных относятся также к манипулированию строками: Chr, Format, CStr, в частности.
Примеры использования строковых функций: n_probel=Instr(―Найти пробел‖,‖ ―) perv_simv=Left(―Выделение текста‖,1)
|
|
|