Введение в использование выражений

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

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

В этой статье

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

Области применения выражений

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

Элементы выражений

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

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

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

Совет : В Access 2010 построитель выражений имеет IntelliSense, чтобы вы могли видеть какие аргументы требует выражение.

Элементы выражения

Например, следующее выражение содержит все четыре элемента:

= =Sum( [Закупочная цена])*0,08

В этом примере Sum() — это встроенная функция, [Закупочная цена] — идентификатор, * — математический оператор, а 0.08 — константа. Это выражение можно использовать в поле в нижнем колонтитуле формы или отчета для вычисления налога с продаж для группы товаров.

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

>0

Это выражение возвращает значение True при сравнении с числом больше нуля и значение False при сравнении с числом меньше нуля. Это выражение можно использовать в свойстве Условие на значение элемента управления или поля таблицы, чтобы обеспечить ввод только положительных значений.

В Access выражения используются во многих элементах для выполнения вычислений, работы с символами или проверки данных. У всех таблиц, запросов, форм, отчетов и макросов есть свойства, в которых можно указывать выражения. Например, выражения можно использовать в свойствах элемента управления Данные и Значение по умолчанию. Выражения также можно использовать в свойстве поля таблицы Условие на значение. Кроме того, при написании кода Microsoft Visual Basic для приложений (VBA) для процедуры обработки событий или модуля часто используются выражения, подобные выражениям для объектов Access, таких как таблица или запрос.

Примечание : Дополнительные сведения о компонентах выражения см. в разделе Элементы выражения далее в этой статье.

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

Области применения выражений

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

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

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

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

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

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

Расширенная_цена : CCur ( [Сведения заказа]. [ Цена за единицу] * [Количество] *(1-[Discount])/100) * 100

Это выражение позволяет получить результирующий столбец (вычисляемое поле) с именем Расширенная_цена.

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

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

= CCur ( [Quantity]*[Price])

Это выражение умножает количество на цену, а затем использует функцию преобразования в валюту (CCur) для приведения результата к типу данных Currency. Также можно вычислить скидку для каждого заказа.

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

Вычисляемое поле, которое объединение имени и фамилии будет выглядеть следующим образом: ["имя"] & "" & [Фамилия]. В этом случае амперсанд (&) объединить значения в поле "имя" , пробел (пробел, заключенный в кавычки) и значение в поле «Фамилия ».

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

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

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

Between #1/1/2007 И # #12/31/2007

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Элементы выражений

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

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

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

Операторы

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

Функции и аргументы

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

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

= Формат ( Date(), " мммм д, гггг ")

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

Дополнительные сведения о функциях и синтаксисе выражений см. в разделе Дополнительные сведения.

Константы

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

Примечание : Константы VBA нельзя применять в пользовательских функциях, которые используются в выражениях. Например, в VBA есть константы для дней недели: vbSunday представляет воскресенье, vbMonday — понедельник и так далее. Каждой из этих констант соответствует числовое значение. Например, числовое значение для vbSunday равно 1, а для vbMonday — 2. Эти константы нельзя применять в пользовательской функции, которая вызывается из выражения. Вместо них необходимо использовать числовые значения.

Значения

В выражениях можно использовать литералы (например, число 1254 или строку "Введите число от 1 до 10"). Также можно использовать числовые значения, которые могут состоять из нескольких цифр, а также знака и запятой. При отсутствии знака Microsoft Access считает значение положительным. Чтобы сделать значение отрицательным, добавьте знак "минус" (-). Также можно использовать научную форму записи. Для этого добавьте символ "E" или "e" и знак экспоненты (например, 1,0E-6).

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

Например, если ввести текст Рига, Access отобразит в выражении "Рига". Если требуется, чтобы результатом выражения была строка, действительно заключенная в кавычки, вложенная строка заключается либо в одинарные кавычки ('), либо в три набора двойных кавычек ("). Например, следующие выражения эквивалентны:

Формы ! [ Контакты]! [Город]. Значение поумолчанию = '"Рига" '

Формы ! [ Контакты]! [Город]. Значение поумолчанию = " " "Paris" " "

При использовании значений даты и времени заключайте значения в символы фунта (#). Например, #3-7-07#, #7-Мар-07# и #Мар-7-2007# — это допустимые значения даты и времени. Когда Access встречает допустимое значение даты и времени, заключенное в символы "#", значение автоматически рассматривается как значение с типом даты и времени.

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

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

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

Выражение

Назначение

=[Срок]-[Дата_поставки]

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

Date()

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

Расширенная_цена: CCur([Сведения заказа].Цена за единицу*[Количество]*(1-[Скидка])/100)*100

Создает в запросе вычисляемое поле с именем "Расширенная_цена".

Between #1/1/2007# And #12/31/2007#

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

=[Подчиненная форма заказов].Form!Промежуточный_итог_заказа

Возвращает значение элемента управления "Промежуточный_итог_заказа" подчиненной формы заказов в форме "Заказы".

>0

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

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

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

Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×