Forms![<имя формы>]![<имя элемента управления>].
Здесь имени формы предшествует имя семейства открытых форм Forms, которому принадлежит данная форма. Эта «добавка» вызвана тем обстоятельством, что БД вполне может содержать таблицу и форму с одинаковыми именами, имеющих к тому же одноименные поля. В общем случае синтаксис оператора «!» таков:
<класс объекта>!<имя объекта>
Оператор "."
Оператор "." (точка) обычно используется для ссылок на свойства форм, отчетов и элементов управления. В частности, идентификатор поля со списком в форме выглядит так:
Forms![<имя формы>]![<имя поля со списком>].[Text].
Здесь точка "." используется для отделения имени поля со списком от его свойства Text, которое возвращает текущее значение поля. В общем случае синтаксис оператора "." таков:
<класс объекта>!<имя объекта>.<свойство объекта>
5.2. Константы
В выражениях встречаются константы следующих типов:
1. Числовые константы (числа) — последовательность цифр, содержащая, если нужно, знак числа и разделитель целой и дробной части числа. В качестве разделителя в зависимости от установок Windows обычно используются "," (запятая) или "." (десятичная точка). Числа могут содержать символ Е или е и знак порядка, например, 1,2Е+04 = 12 000.
2. Текстовые константы (строки) — могут содержать любые символы из набора символов кодовой таблицы ANSI. В выражениях строки нужно с обеих сторон заключать в прямые кавычки ("). Обычно Access добавляет их сам.
3. Константы типа Дата/время. Они должны быть заключены в знаки номера "#". Обычно Access добавляет их сам, если опознает, что вводится дата в одном из стандартных форматов "дд.мм.гг" или "дд/мм/гг".
5.3. Функции
В состав выражений часто входят различные функции. Всего в Access и VBA определено более 160 функций. Здесь приводится краткое описание лишь части из них. В основном даны функции, используемые в примерах пособия и заданиях по Access .
5.3.1. Функции для работы с датами
1. Date() — текущая дата. Может использоваться в формах и отчетах, а также задавать условие отбора для запроса. Например, Date() – 1 задает дату, предшествующую текущей дате.
2. Day(дата 1) — день месяца, целое число от 1 до 31. Например, Day(#10.08.99#) возвращает номер дня, равный 10.
3. DatePart(интервал 2; дата) — возвращает указанный в аргументе <интервал> компонент даты, целое число. Например, Datepart("q";#15.09.98#) возвращает число 3 — номер третьего квартала.
4. DateAdd(интервал; число; дата) — возвращает значение, содержащее дату, вычисляемую по формуле <дата> + <число> * <интервал>. Аргумент <интервал> принимает такие же значения, как и в функции DatePart. Например, DateAdd("m";2;[Дата1]) возвращает дату, отстоящую от значения даты в поле Дата1 на два месяца.
5. Format(дата, формат 3) — дает дополнительные возможности для использования в выражениях дат и возвращает строку символов. Строка <формат> может объединять несколько базовых форматов и символьных строк, которые заключаются в двойные кавычки. Например, Format(#22.03.73#; "dddd "","" d mmmm yy ""года""") возвращает строку четверг, 22 марта 73 года.
6. Month(дата) — месяц, целое число от 1 до 12. Например, Мonth(#10.08.99#) возвращает номер месяца, равный 8 (август).
7. Now() — дата и время компьютера. Часто используется в отчетах, созданных с помощью мастеров Access.
8. Weekday(дата) — день недели, целое число от 1 до 7, воскресенье равно 1. Например, Weekday(#22.03.73#) возвращает число 5 (четверг).
9. Year(дата) — год, целое число. Например, Year([Студенты]![Дата рождения]) возвращает год рождения студента.
5.3.2. Функции для работы со строками
1. Chr(код_символа) — возвращает символ, соответствующий указанному коду символа из кодовой таблицы Windows ANSI. Например, Chr(100)="d", Chr(200)="И".
2. Left(строка, число_символов) — указанное число первых символов строки. Например, Left([Студенты]![Имя],1) возвращает первую букву имени студента.
3. Len(строка) — число символов в строке. Например, Len([Фамилия]) дает число символов в фамилии, содержащейся в поле Фамилия.
4. Mid(строка; нач_символ; число_символов) — возвращает подстроку, содержащую указанное число символов строки, начиная с указанного символа. Последний аргумент необязателен. Если он отсутствует, то возвращаются все символы начиная с указанного символа до конца строки. Например, Mid("Студент Петров";9;4) возвращает «Петр», а Mid("Студент Петров";9) возвращает «Петров».
5. Right(строка, число_символов) — указанное число последних символов строки. Например, Right([Код студента],3) возвращает последние три символа кода студента.
6. Trim(строка) — удаляет пробелы в начале и конце строки символов.