Сравнение строк

Для сравнения строк предназначена функция StrComp(). Формат функции:

StrComp(<Строка1>, <Строка2>[, <Сравнение>])

Параметр <Сравнение> задает режим сравнения строк. Можно указать следующие константы (или соответствующие им значения):

  • vbBinaryCompare — 0 — двоичное сравнение. Сравнение зависит от регистра символов;
  • vbTextCompare — 1 — текстовое сравнение. Регистр символов при сравнении не учитывается.

Если параметр <Сравнение> не указан, то по умолчанию сравнение зависит от значения инструкции Option Compare, которая должна быть расположена в самом начале модуля. Если инструкция имеет значение Binary (или инструкция не указана), то используется двоичное сравнение, а если Text— то текстовое сравнение.

Функция StrComp() возвращает одно из следующих значений:

  • 0 — если строки равны;
  • 1 — если <Строка1> больше <Строка2>;
  • -1 — если <Строка1> меньше <Строка2>.

Пример:

Debug.Print StrComp("строка", "строка")   ' 0
Debug.Print StrComp("строка1", "строка2") ' -1
Debug.Print StrComp("строка2", "строка1") ' 1
Debug.Print StrComp("строка", "СТРОКА")
' 1 (если Option Compare Binary)
' 0 (если Option Compare Text)
Debug.Print StrComp("строка", "СТРОКА", vbBinaryCompare) ' 1
Debug.Print StrComp("строка", "СТРОКА", vbTextCompare)   ' 0

Сравнивать строки можно с помощью операторов сравнения. В этом случае способ сравнения зависит от значения инструкции Option Compare. Подробное описание операторов сравнения приведено в разд. 4.1. Пример:

Debug.Print ("строка" = "СТРОКА")
' False (если Option Compare Binary)
' True (если Option Compare Text)

Сравнить строку с заданным шаблоном позволяет оператор Like. В этом случае способ сравнения зависит от значения инструкции Option Compare. Подробное описание оператора Like приведено в разд. 4.1. Пример:

Debug.Print "ё" Like "[А-ЯЁ]"
' False (если Option Compare Binary)
' True (если Option Compare Text)

Visual Basic for Applications (VBA)
Самоучитель по VBA

Помощь сайту

Yandex-деньги: 410011140483022

ПАО Сбербанк:
Счет: 40817810855006152256
Реквизиты банка:
Наименование: СЕВЕРО-ЗАПАДНЫЙ БАНК ПАО СБЕРБАНК
Корреспондентский счет: 30101810500000000653
БИК: 044030653
КПП: 784243001
ОКПО: 09171401
ОКОНХ: 96130
Скриншот реквизитов

Поиск по сайту в Яндексе