Еще раз повторяю вопрос - отправил договор и сканы документов по почте - в начале августа, до 5 го, внес предоплату - летом действовала скидка - чтобы пройти курс в августе, но я уезжал в Москву. По возвращению - и в течение месяца - никакого ответа, никаких зачислений, ничего. Как проверить, пришли ли мои документы в Интуит, предоплата, почему нет зачисления. |
Операции с данными
Операции сравнения
Операции сравнения являются операциями отношения между данными. Результат операции - логические значения True (Истина) или False (Ложь). Отношения между значениями булевских переменных и переменных типа Date равносильны отношениям между числовыми данными.
Пример
Процедура сравнивает значения двух переменных, которым присвоены значения True и False ( рис. 5.5).
Результат сравнения False. При сравнении логических значений считается, что значению True соответствует - 1 а значению False соответствует 0.
Отношения между символьными данными основываются на порядке сортировки символов и знаков, задаваемым инструкцией Option Compare, которая размещается в области Declarations модульного листа. Символы сравниваются попарно слева направо. Могут быть использованы любые знаки операций сравнения.
Инструкция Option Compare Binary задает способ сравнения строковых значений, основанный на внутреннем двоичном представлении символов и соответствует стандартному способу сравнения строк, определяемому кодовой страницей. Например,
A < B < E < Z < a < b < e < z < Б < К < Ш < б < к < ш
Оператор Option Compare Text позволяет задать способ сравнения строковых значений, не принимая в рассмотрение регистр. Например,
(A=a) < (B=b) < (E=e) < (Z=z)< (Б=б) < (К=к) < (Ш=ш)
Оператор Like
Для сравнения символьных строк можно использовать оператор Like, который сравнивает строки с учетом регистра, используя образец сравнения (маску).
Синтаксис оператора: string Like pattern
Оба операнда string (строка) и pattern (образец) являются строковыми переменными. Если значение переменной string соответствует значению переменной pattern, результат сравнения True ; при их несоответствии результат сравнения False. Если любой из операндов имеет значение Null, результат также равен Null. Подробно см. Help.
Оператор | Результат | Комментарии |
---|---|---|
"aBBBa" Like "a*a" | True | Любое количество символов между двумя буквами a |
"F" Like "[A-Z]" | True | Одна любая прописная латинская буква |
"F" Like "[!A-Z]" | False | Один символ, кроме прописных латинских букв |
"a2a" Like "a#a" | True | Одна цифра между двумя буквами a |
"aM5b" Like "a[L-P]#[!c-e]" | True | После буквы a следует заглавная латинская буква от L до P, затем цифра и любая строчная латинская буква, исключая буквы в интервале от c до e |
"BAT123khg" Like "B?T*" | True | После буквы B следует любой символ, после которого буква T и далее любое количество любых символов |
"CAT123khg" Like "B?T*" | False |
Операнд pattern должен удовлетворять следующим соглашениям:
- задаваемая маска, как любая символьная строка, заключается в кавычки;
- можно использовать подстановочные знаки (символы шаблона) и диапазоны символов:
- звездочка (*) для замены любого количества символов, знак вопроса (?) для замены одного символа и решетка (#) для замены любой цифры от 0 то 9;
- диапазоны символов задаются в квадратных скобках перечислением или интервалом через дефис. Например, чтобы указать, что образец сравнения есть прописная буква латинского алфавита, используйте маску "[A-Z]". Для указания, что сравниваемое значение не принадлежит диапазону, поставьте перед диапазоном восклицательный знак. Например, маска "[!A-z]" подразумевает, что тестируемое значение не является буквой латинского алфавита.
- При задании диапазона значения указываются в алфавитном порядке, т.е. список [ARZ] корректен, а запись [ZAR] не верна.
- Пустая пара квадратных скобок рассматривается как пустая строка.
Логические операции
Логические операции, объединяя два условия в одно, позволяют сформулировать сложное условие (комплексный критерий), результатом проверки которого также является логическое значение True или False. Операндами логических операций могут являться логические переменные или операции сравнения.
Например, запись A>=25 And A<=85 означает проверку, принадлежит значение переменной A отрезку [25;85].
Значение Null в приведенной таблице истинности указывает на отсутствие значения у операнда или у результата.
Символьные операции
Смысл единственной символьной операции (операции конкатенации или сцепления) состоит в том, что порождается новая символьная строка, значение которой получается присоединением значения второго операнда справа к значению первого операнда. Оба операнда рассматриваются как символьные переменные.
- Знак сложения может использоваться как знак операции конкатенации, но если операндами являются числа, то произойдет сложение операндов.
Пример
В процедуре производится распечатка вновь создаваемой строки c текстом "Visual Basic for Application".
Можно использовать встроенные константы vbCrLf, vbCr, vbLf для разбиения текста на строки. Для этого запишите последний оператор процедуры в виде:
Debug.Print a & vbCrLf & b & vbCrLf & c & vbCrLf & d