Applies ToAccess для Microsoft 365 Access 2021 Access 2019 Access 2016 Access 2013

Выражения в Microsoft Access можно применять для решения широкого круга задач (например, для математических вычислений, объединения и извлечения текста или проверки данных). В этой статье приведены основные сведения о выражениях, в том числе инструкции по их использованию, сравнение с формулами Microsoft Excel, а также описание их компонентов.

В этом разделе...

Общие сведения о выражениях

Это можно представить себе следующим образом: если вы хотите, чтобы приложение Access сделало что-то, вам нужно обратиться к нему на его языке. Предположим, что вы хотите попросить Access проверить поле BirthDate в таблице Customers и сообщить год рождения заказчика. Вы можете записать эту просьбу в виде такого выражения:

DatePart("yyyy",[Customers]![BirthDate])

Это выражение содержит функцию DatePart и два аргумента: "yyyy" и [Customers]![BirthDate].

Рассмотрим его более подробно.

Пример выражения

1 DatePart — это функция, которая проверяет даты и возвращает определенный фрагмент. В этом случае используются первые два аргумента.

2 Аргумент интервала сообщает Access, какую часть даты нужно вернуть. В данном случае значение "yyyy" указывает на то, что требуется вернуть только год.

3 Аргумент даты говорит о том, где искать значение даты. В данном случае значение [Customers]![BirthDate] указывает, что дата находится в поле BirthDate таблицы Customers.

Способы использования выражений

С помощью выражений можно делать следующее:

  • Вычислять значения, которые отсутствуют в данных. Можно вычислять значения в полях таблиц и запросов и в элементах управления форм и отчетов.

  • Присваивать значения по умолчанию полям таблиц или элементам управления в формах и отчетах. Эти значения по умолчанию отображаются при каждом открытии таблицы, формы или отчета.

  • Создавать правила проверки, чтобы определять значения, которые пользователь может вводить в поле или элемент управления.

  • Определять условия запроса для ограничения результатов нужным подмножеством.

Вычисление значений

Один из наиболее распространенных способов использования выражений в Access — вычисление значений, которые присутствуют непосредственно в данных. Столбец в таблице или запросе, в котором сохраняются результаты таких вычислений, называется вычисляемым полем. Вы можете создать вычисляемое поле, в котором объединяются данные из двух или нескольких полей таблицы. Например, имена и фамилии часто хранятся в разных полях. Если вы хотите объединить имена и фамилии, а затем отобразить их в одном поле, можно создать вычисляемое поле в таблице или запросе:

[FirstName] & " " & [LastName].

Здесь амперсанд (&) используется для объединения значения в поле FirstName, символа пробела (он заключен в кавычки) и значения в поле LastName.

Определение значения по умолчанию

В Microsoft Access с помощью выражений можно установить значения по умолчанию для поля в таблице или элемента управления. Например, чтобы по умолчанию задать для поля даты текущую дату, в поле свойства DefaultValue (Значение по умолчанию) необходимо ввести такое выражение:

Date()

Создание правила проверки

Кроме того, выражения можно использовать для настройки правила проверки. Например, правило проверки можно использовать в элементе управления или поле таблицы, чтобы требовать ввода даты, которая не предшествует текущей. В этом случае в поле свойства ValidationRule (Правило проверки) нужно ввести выражение:

>= Date()

Определение условий запроса

Наконец, выражения можно использовать для определения условий запросов. Предположим, что необходимо получить данные о продажах для заказов, поставленных в определенный период времени. Можно ввести условия для определения диапазона данных, а Microsoft Access вернет только те строки, которые соответствуют им. Например, выражение может выглядеть следующим образом:

Between #1/1/2017# And #12/31/2017# 

При добавлении условий в запрос и выполнении этого запроса возвращаются только те значения, которые соответствуют указанным датам.

Примеры выражений

В приведенной ниже таблице представлены некоторые примеры выражений Access и типичные способы их использования.

Выражение

Назначение

=[RequiredDate]-[ShippedDate]

Вычисляет разницу между значениями дат в двух текстовых полях (RequiredDate и ShippedDate) отчета.

Date()

Устанавливает текущую дату в качестве значения по умолчанию для поля даты и времени в таблице.

Between #1/1/2017# And #12/31/2017#

Определяет условия для поля даты и времени в запросе.

=[Orders Subform].Form!OrderSubtotal

Возвращает значение элемента управления OrderSubtotal подчиненной формы Orders в форме Orders.

>0

Задает правило проверки для числового поля таблицы: пользователи должны вводить значения больше нуля.

Одни выражения начинаются с оператора равенства (=), а другие — нет. При вычислении значения для элемента управления в форме или отчете в начале выражения указывается оператор =. В других случаях, например при вводе выражения в запрос или в свойство DefaultValue либо ValidationRule поля или элемента управления оператор = использовать не нужно, если только выражение не добавляется в текстовое поле таблицы. В некоторых случаях, например при добавлении выражений в запросы, Access автоматически удаляет оператор =.

Компоненты выражений

Выражение представляет собой набор компонентов, используемых по одному или в сочетании друг с другом, который дает определенный результат. Вот эти компоненты:

  • Идентификаторы    — имена полей таблицы или элементов управления в форме или отчете либо свойства этих полей или элементов управления;

  • Операторы    — например: + (плюс) или - (минус);

  • Функции    — например: SUM или AVG;

  • Константы    — постоянные значения, например текстовые строки или числа, не вычисляемые выражением;

  • Значения    — строки, например "Введите число от 1 до 10", или числа, такие как 1254, которые используются в операциях.

Эти компоненты описаны более подробно в разделах ниже.

Идентификаторы

Идентификатор — это имя поля, свойства или элемента управления. Идентификаторы используются в выражении для ссылки на значение, связанное с полем, свойством или элементом управления. Например, рассмотрим выражение =[RequiredDate]-[ShippedDate]. В этом выражении значение поля или элемента управления ShippedDate вычитается из значения поля или элемента управления RequiredDate. В этом выражении как RequiredDate, так и ShippedDate являются идентификаторами.

Операторы

Access поддерживает большое количество операторов, в том числе стандартные арифметические операторы, такие как +, -, * (умножение) и / (деление). Также можно использовать операторы сравнения, например < (меньше) или > (больше), для сравнения значений; текстовые операторы, например & и +, для сцепления (объединения) текста; логические операторы, например Not и And, для определения значений True и False, а также специальные операторы Access.

Функции

Функции — это встроенные процедуры, которые можно использовать в выражениях. Функции можно применять для широкого ряда операций, например для вычисления значений, работы с текстом и датами, а также для подведения итогов. Например, одной из распространенных функций является DATE, которая возвращает текущую дату. Функцию DATE можно использовать различными способами (например, в выражении, которое задает значение по умолчанию для поля или таблицы). В данном примере при добавлении новой записи в качестве значения для поля по умолчанию устанавливается текущая дата.

Для некоторых функций требуются аргументы. Аргумент — это значение, которое передает функции входные параметры. Если функции требуется несколько аргументов, они разделяются точкой с запятой. Например, рассмотрим функцию DATE в следующем примере выражения:

=Format(Date(),"mmmm d, yyyy")

В этом примере используются два аргумента:

  • Первый аргумент — функция Date(), которая возвращает текущую дату. Даже если аргументов нет, после имени функции необходимо ввести скобки.

  • Второй аргумент — "mmmm d, yyyy". Он отделен от первого аргумента точкой с запятой и задает текстовую строку, чтобы указать функции FORMAT, как отформатировать возвращаемое значение даты. Обратите внимание: текстовую строку необходимо заключить в кавычки.

Это пример также иллюстрирует вложение функций: результат, возвращенный одной функцией, часто служит аргументом другой функции. В этом случае Date() выступает в качестве аргумента.

Константы

Константа — это элемент, значение которого не изменяется во время работы Access. В выражениях часто используются константы True, False и Null.

Значения

В выражениях можно использовать литералы (например, число 1254 или строку "Введите число от 1 до 10"). Вы также можете использовать числовые значения, представляющие собой последовательность цифр и при необходимости содержащие знак и десятичный разделитель.

При использовании текстовых строк заключайте их в кавычки, чтобы они правильно интерпретировались в Access. В некоторых ситуациях Access вводит кавычки за пользователя. Например, при вводе текста в выражение для правила проверки или условий запроса Access автоматически заключает текстовые строки в кавычки.

При использовании значений даты и времени помещайте их между знаками решетки (#). Например, #3-7-17#, #7-Mar-17# и #Mar-7-2017# — допустимые значения даты и времени. Когда приложение Access встречает допустимое значение даты и времени, заключенное в символы #, значение автоматически обрабатывается как имеющее тип даты и времени.

К началу страницы

Сравнение выражений Access и формул Excel

Выражения Access напоминают формулы Excel, так как для получения результатов в них используются похожие элементы. И в формулах Excel, и в выражениях Access содержатся некоторые или все из указанных ниже элементов.

  • Идентификаторы    В Excel идентификаторы — это имена отдельных ячеек или диапазонов ячеек в книге, например A1, B3:C6 или Лист2!C32. В Access идентификаторы — это имена полей таблиц (например, [Contacts]![First Name]), элементов управления в формах и отчетах (например, Forms![Task List]![Description]) или свойства этих полей или элементов управления (например, Forms![Task List]![Description].ColumnWidth).

  • Операторы    Как в Access, так и в Excel операторы используются для сравнения данных или выполнения простых вычислений с ними. В качестве примеров можно привести операторы + (плюс) и - (минус).

  • Функции    Как в Access, так и в Excel функции и аргументы используются для выполнения задач, которые невозможно выполнить с помощью одних только операторов. Например, можно найти среднее для значений в поле или преобразовать результаты вычислений в формат денежной единицы. Примерами функций могут служить SUM и STDEV (в Excel — СУМ и СТАНДОТКЛОН). Аргументы — это значения, используемые для передачи данных функциям. И в Access, и в Excel есть много функций, но имена схожих функций в этих приложениях различаются. Например, функция СРЗНАЧ в Excel соответствует функции AVG в Access.

  • Константы    И в Access, и в Excel константы — это значения, которые не изменяются (например, числа, не вычисляемые с помощью выражений).

  • Значения    Значения используются в Access и Excel одинаково.

В выражениях Access используются такие же операторы и константы, как и в формулах Excel, но другие идентификаторы и функции. В то время как формулы Excel, как правило, используется только в ячейках листа, выражения Access используются во многих частях приложения для решения широкого круга задач, включая следующие:

  • создание вычисляемых элементов управления в формах и отчетах;

  • создание вычисляемых полей в таблицах и запросах;

  • составление условий в запросах;

  • проверка данных, вводимых в поле, элемент управления или форму;

  • группировка данных в отчетах.

Выражения Access и формулы Excel можно использовать для вычисления числовых значений или значений даты и времени с помощью математических операторов. Например, для вычисления цены со скидкой для клиента можно использовать формулу Excel =C2*(1-D2) или выражение Access = [Unit Price]*(1-[Discount]).

Выражение Access или формулу Excel можно использовать для объединения, разбиения или другой обработки строк с помощью строковых операторов. Например, для объединения имени и фамилии в одну строку можно использовать формулу Excel =D3 &" " & D4 или выражение Access = [First Name] & " " & [Last Name].

К началу страницы

Работа с построителем выражений

Создание выражений

Руководство по синтаксису выражений

Примеры выражений

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.