Access 2002

Описание оператора Like


А вот если вы прочтете описание оператора Like, то обнаружите, что ту же задачу с его помощью можно решить значительно проще. Данный оператор позволяет сравнить две строки, используя символы подстановки. (Его полное описание вы найдете в интерактивной справке.) Например, приведенный выше код можно заменить такой вот простой строкой:

Наши тесты показали, что код с использованием оператора Like выполняется за время, которое на 35% меньше времени выполнения исходного варианта кода. И хотя возможности оператора Like ограниченны и с некоторыми особо сложными условиями сравнения ему не справиться, там, где он применим, он делает сложное простым. (Просмотрите также полные тестовые процедуры Test9a и Test9b в модуле класса Ор- timizingTests.)

Просмотрев полный список встроенных функций VBA, вы обнаружите нечто странное: все строковые функции реализованы в двух вариантах с одинаковыми названиями, одно из которых, правда, оканчивается символом Например, в VBA имеются функции Left и Lefts. Почему их две?

В ранних версиях языка Basic до того, как появилась возможность объявлять тип переменой с помощью отдельного ключевого слова, программисты должны были использовать специальные символы типов: «$» для строк, «%» для целых чисел, «&» для длинных целых и т. д. То же касалось и имен функций: имена функций, возвращавших строковые значения, оканчивались символом «$». Теперь символы, обозначающие типы данных функций и переменных, больше не используются (разве что самыми упорными программистами), а вот $-функции сохранились.

Функция Left возвращает значение типа Variant, а функция Left! — типа String. Если вы помещаете возвращаемое значение в переменную типа Variant, имеет смысл использовать функцию Left. Однако чаще строки присваиваются строковым переменным, и в этом случае вызов Left заставит VBA выполнить дополнительное преобразование типов.

Комментарии закрыты