С помощью выражений можно выполнять разнообразные операции с данными. Например, вы можете определить, сколько дней прошло с момента отправки заказа, или объединить содержимое полей FirstName и LastName и поместить результат в поле FullName. Разделы этой статьи содержат пошаговые инструкции по созданию выражений.
В этой статье
Вычисление значений элементов управления в формах и отчетах
При использовании выражения в качестве источника данных элемента управления создается вычисляемый элемент управления. Предположим, например, что имеется отчет, в котором отображаются товары на складе, и необходимо создать в нижнем колонтитуле итог для суммирования данных по всем строкам отчета.
Чтобы вычислить итог, поместите элемент управления «поле» в нижний колонтитул отчета и настройте для свойства ControlSource этого поля следующее выражение:
=Sum([table_field])
В данном случае table_field — это имя поля, содержащего значения промежуточных итогов. Оно может находиться в таблице или запросе. Функция Sum вычисляет итог для всех значений в table_field.
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши форму, которую необходимо изменить, и выберите в контекстном меню пункт Режим макета или Конструктор.
-
Выделите элемент управления, в который необходимо ввести выражение.
-
Если окно свойств не отображается, нажмите клавишу F4.
-
Чтобы создать выражение вручную, на вкладке Данные страницы свойств выберите свойство ControlSource (Данные) поля, а затем введите выражение, предварив его знаком равенства (=). Например, для вычисления итога, как показано выше, введите =Sum([table_field]). Вместо элемента table_field укажите действительное имя поля.
-
Чтобы создать выражение с помощью построителя выражений, нажмите кнопку Построить
в ячейке свойства.
После ввода выражения окно свойств будет выглядеть так:
К началу страницы
Использование выражений в условиях запросов
Вы можете использовать условия, чтобы ограничить результаты запроса. Введите условия в виде выражения, и приложение Access вернет только соответствующие ему строки.
Предположим, вы хотите просмотреть все заказы с датой отгрузки в течение первых трех месяцев 2017 г. Чтобы задать условие, введите следующее выражение в ячейку Условия столбца «Дата и время» в запросе. В нашем примере используется столбец «Дата и время» с именем ShippedDate. Чтобы определить диапазон дат, введите следующее условие:
Between #1/1/2017# And #3/31/2017#
Столбец ДатаИсполнения будет выглядеть подобным образом:
Для каждой записи в таблице заказов, для которой значение в столбце ShippedDate попадает в указанный интервал дат, будет создана запись в выходных данных запроса. Обратите внимание: в выражении даты заключаются в знаки решетки (#). Значение между знаками решетки трактуется в Access как значение с типом данных «Дата и время». Это означает, что с такими значениями могут производиться соответствующие вычисления, например вычитание одной даты из другой.
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши запрос, который необходимо изменить, и выберите в контекстном меню пункт Конструктор.
-
Выберите ячейку Условия в столбце, для которого необходимо создать условие отбора.
-
Чтобы создать выражение вручную, введите выражение условия. Не начинайте выражение условия с оператора =.
-
Чтобы использовать построитель выражений, на вкладке Конструктор в группе Настройка запроса нажмите кнопку Построитель
.
Если для редактирования выражения вам требуется больше места, установите курсор в ячейку Условие отбора, а затем нажмите сочетание клавиш SHIFT+F2, чтобы открыть окно Область ввода:
Совет Чтобы сделать текст более удобным для чтения, выберите Шрифт.
К началу страницы
Создание вычисляемого поля в запросе
Предположим, вы создаете запрос и хотите показать результаты расчета, в котором используются другие поля запроса. Чтобы создать вычисляемое поле, нужно ввести выражение в пустую ячейку в строке Поле запроса. Допустим, в вашем запросе есть поля Количество и Цена. Их значения требуется перемножить, чтобы получить вычисляемое поле Сумма. Для этого в строке Поле запроса введите следующее выражение:
Extended Price: [Quantity] * [Unit Price]
Поскольку выражение начинается с текста Extended Price:, новый столбец получит имя Сумма. Это имя часто называется псевдонимом. Если псевдоним не указан, он будет создан автоматически, например такой: Expr1.
При выполнении запроса в Access выполняется расчет каждой строки, как показано ниже:
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши запрос, который необходимо изменить, и выберите в контекстном меню пункт Конструктор.
-
Выберите ячейку Поле в столбце, в котором необходимо создать вычисляемое поле.
-
Чтобы создать выражение вручную, просто введите его.
Не начинайте выражение условия с оператора = . В начале выражения должно стоять понятное название, за которым следует двоеточие. Например, введите Extended Price:, чтобы задать название в выражении, которое создает вычисляемое поле с именем Extended Price. После двоеточия введите условие для выражения.
-
Чтобы использовать построитель выражений, на вкладке Конструктор в группе Настройка запроса нажмите кнопку Построитель.
К началу страницы
Создание вычисляемого поля в таблице
В Access можно создать вычисляемое поле в таблице. Благодаря этому для выполнения расчетов не придется создавать отдельный запрос. Например, если у вас есть таблица, в которой перечислены количество, цена и налоговая ставка для каждой позиции заказа, вы можете добавить вычисляемое поле общей стоимости:
[Quantity]*([UnitPrice]+([UnitPrice]*[TaxRate]))
В вычислении нельзя использовать поля из других таблиц или запросов, а результаты вычислений доступны только для чтения.
ПРОЦЕДУРА
-
Откройте таблицу, дважды щелкнув ее в области навигации.
-
Прокрутите таблицу по горизонтали до крайнего правого столбца и нажмите в заголовке столбца кнопку Щелкните, чтобы добавить.
-
В появившемся списке выберите пункт Вычисляемое поле и укажите тип данных результата. В Access откроется построитель выражений.
-
Введите формулу вычисления, которую вы хотите использовать для этого поля, например:
[Quantity] * [Unit Price]
Выражения в вычисляемых полях не начинаются со знака равенства (=).
-
Нажмите кнопку ОК.
Приложение Access добавит вычисляемое поле и выделит его заголовок, чтобы можно было ввести имя поля.
-
Введите имя вычисляемого поля и нажмите клавишу ВВОД.
К началу страницы
Задание значений по умолчанию для поля таблицы
С помощью выражения можно задать для поля таблицы значение по умолчанию, которое Access будет использовать для новых записей, если не предоставлено другое значение. Допустим, вы хотите автоматически вставлять дату и время в поле «Дата_заказа» при добавлении новой записи. Для этого можно использовать следующее выражение:
Now()
ПРОЦЕДУРА
-
В области навигации дважды щелкните таблицу, которую нужно изменить.
Таблица откроется в режиме таблицы.
-
Выберите поле, которое требуется изменить.
-
На вкладке Поля в группе Свойства нажмите кнопку Значение по умолчанию. В Access откроется построитель выражений.
-
Введите выражение, начинающееся со знака равенства (=).
Примечание. При связывании элемента управления с полем таблицы действует следующее правило: если для элемента управления и для поля заданы значения по умолчанию, значение по умолчанию элемента управления имеет приоритет.
К началу страницы
Задание значений по умолчанию для элементов управления
Другим объектом, где часто применяются выражения, является свойство Значение по умолчанию элемента управления. Свойство Значение по умолчанию элемента управления аналогично свойству Значение по умолчанию поля в таблице. Например, чтобы использовать текущую дату в качестве значения по умолчанию для текстового поля, вы можете указать следующее выражение:
Date()
В этом выражении используется функция Date, которая возвращает текущую дату, но не время. Если текстовое поле привязано к полю таблицы, которое имеет значение по умолчанию, то значение по умолчанию элемента управления будет иметь приоритет перед значением по умолчанию поля таблицы. Часто имеет смысл настроить свойство Значение по умолчанию для поля таблицы. Если в этом случае к одному и полю таблицы привязано несколько элементов управления в разных формах, каждый из них будет иметь одно значение по умолчанию, и ввод данных во всех формах будет согласованным.
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши форму или отчет, которые необходимо изменить, и выберите в контекстном меню пункт Конструктор или Режим макета.
-
Выделите элемент управления, который необходимо изменить.
-
Если окно свойств не отображается, нажмите клавишу F4.
-
На вкладке Все окна свойств перейдите к ячейке свойства Значение по умолчанию.
-
Введите выражение или нажмите кнопку Построить
в ячейке свойства, чтобы создать выражение с помощью построителя выражений.
К началу страницы
Добавление правила проверки в поле таблицы или запись
Выражения весьма полезны при проверке данных, которые вводятся в базу данных: они позволяют отсеять неподходящие сведения. В таблицах можно создавать правила проверки двух типов: для полей, которые не позволяют вводить в поля недопустимые данные, и для записей, которые не позволяют создавать записи, нарушающие правило. В обоих случаях используются выражения.
Предположим, что в таблице Inventory имеется поле Units On Hand и требуется задать условие, разрешающее пользователям вводить только неотрицательные значения. Иначе говоря, количество товара никогда не может быть отрицательным. Это можно сделать, указав для поля Units On Hand следующее правило проверки:
>=0
ПРОЦЕДУРА: ввод правила проверки для поля или записи
-
В области навигации дважды щелкните нужную таблицу. Таблица откроется в режиме таблицы.
-
При вводе условия на значение поля выделите поле, которое необходимо изменить.
-
На вкладке Поля в группе Проверка поля нажмите кнопку Проверка и выберите пункт Правило проверки поля или Правило проверки. В Access откроется построитель выражений.
-
Начните вводить необходимые условия. Например, для условия на значение поля, требующего ввода неотрицательных значений, введите следующее выражение:
>=0
Не начинайте выражение со знака равенства (=).
Выражения правил проверки являются логическими, т. е. их результатом может быть только значение True или False. Если значение не равно True, Access не сохраняет вводимые данные и выводит сообщение об ошибке. Если в этом примере ввести в поле Units On Hand отрицательное значение, правило проверки выдаст результат False и значение будет отклонено. Если вы не ввели сообщение об ошибке, как описано в предыдущем разделе, Access отобразит собственное сообщение, в котором указано, что введенное значение запрещено правилом проверки для поля.
ПРОЦЕДУРА: ввод сообщения проверки правильности
Чтобы сделать базу данных более удобной в использовании, можно задать собственные сообщения проверки правильности. Эти сообщения будут использоваться вместо стандартных сообщений, выводимых приложением Access, когда данные не соответствуют условию. В сообщение можно включить сведения, помогающие пользователю ввести правильные данные, например «Значение в поле Units On Hand не может быть отрицательным».
-
В области навигации дважды щелкните таблицу, которую нужно изменить.
Таблица откроется в режиме таблицы.
-
При создании сообщения для условия на значение поля выделите соответствующее поле.
-
На вкладке Поля в группе Проверка полей нажмите кнопку Проверка и выберите пункт Сообщение проверки поля или Сообщение проверки записи.
-
В диалоговом окне Введите сообщение о проверке введите сообщение, которое будет выводиться, если данные не соответствуют условию на значение, и нажмите кнопку ОК.
К началу страницы
Добавление правила проверки в элемент управления
Как и у полей таблицы и записей, у элементов управления есть свойство ValidationRule (Правило проверки), для которого можно создать выражение. Предположим, что используется форма ввода интервала дат для отчета и требуется, чтобы начальная дата была не раньше, чем 01.01.2017. В этом случае можно задать свойства ValidationRule и ValidationText (Сообщение об ошибке) для поля, в которое вводится начальная дата:
Свойство |
Параметр |
---|---|
Условие на значение |
>=#01.01.2017# |
Сообщение об ошибке |
Невозможно ввести дату ранее 01.01.2017. |
При попытке ввести дату раньше 01.01.2017 будет выведено сообщение с текстом, указанным в свойстве ValidationText. Если поле свойства ValidationText пусто, будет выведено стандартное сообщение. После нажатия кнопки ОК фокус ввода вернется в текстовое поле.
Если условие на значение задается для поля таблицы, оно будет действовать при любом изменении значения этого поля в базе данных. Напротив, если условие на значение задается для элемента управления в форме, оно будет действовать только при использовании этой формы. Чтобы задать разные условия на значение для разных пользователей, иногда имеет смысл создать эти условия отдельно для полей таблицы и элементов управления в форме.
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши форму или отчет, которые необходимо изменить, и выберите в контекстном меню пункт Конструктор или Режим макета.
-
Щелкните правой кнопкой мыши элемент управления, который требуется изменить, и выберите в контекстном меню пункт Свойства. Будет отображено окно свойств элемента управления.
-
На вкладке Все выберите ячейку свойства Validation Rule (Правило проверки).
-
Введите выражение или нажмите кнопку Построить
в ячейке свойства, чтобы создать выражение с помощью построителя выражений.
Не начинайте выражение с оператора =.
-
Чтобы настроить сообщение, которое появится при вводе значения, не соответствующего условию, укажите нужный текст в ячейке свойства Сообщение об ошибке.
К началу страницы
Группировка и сортировка данных в отчетах
В области Группировка, сортировка и итоги можно определить уровни группировки и порядок сортировки для данных в отчете. Как правило, группировка и сортировка выполняются по полю, выбранному в списке, но если требуется выполнить группировку или сортировку по вычисляемому значению, можно указать выражение.
Группировка — это процедура суммирования столбцов с одинаковыми значениями. Например, пусть в базе данных хранятся сведения о продажах для офисов в разных городах, а один из отчетов этой базы данных называется «Продажи по городам». Запрос, который обеспечивает данные для этого отчета, группирует их по названию города. Такого рода группировка облегчает восприятие и понимание информации.
Напротив, сортировка представляет собой процесс наложения порядка сортировка на строки (записи) в результатах запроса. Например, можно отсортировать записи по значению первичного ключа (или по другому набору значений в другом поле) по возрастанию или по убыванию либо отсортировать записи по одному или нескольким символам в указанном порядке, например по алфавиту.
ПРОЦЕДУРА: добавление группировки и сортировки в отчет
-
В области навигации щелкните правой кнопкой мыши отчет, который необходимо изменить, и выберите в контекстном меню пункт Режим макета или Конструктор.
-
На вкладке Конструктор в группе Группировка и итоги нажмите кнопку Группировка и сортировка. Ниже отчета появится область Группировка, сортировка и итоги.
-
Чтобы добавить к отчету уровень группировки, нажмите Добавить группировку.
-
Чтобы добавить к отчету порядок сортировки, нажмите Добавить сортировку.
В области появится новый уровень группировки или порядок сортировки, а также список полей с данными для этого отчета. На приведенном ниже рисунке показан типичный новый уровень группировки (по полю «Категория») и порядок сортировки (по полю «Производитель»), а также список доступных полей для группировки и сортировки.
-
Ниже списка доступных полей нажмите выражение, чтобы открыть построитель выражений.
-
Введите нужное выражение в поле выражения (верхнее поле) построителя выражений. Обязательно начните выражение с оператора равенства (=).
ПРОЦЕДУРА: добавление выражения в существующую группировку или сортировку
-
В области навигации щелкните правой кнопкой мыши отчет, который необходимо изменить, и выберите в контекстном меню пункт Режим макета или Конструктор.
-
Выберите уровень группировки или порядок сортировки, который требуется изменить.
-
Щелкните стрелку вниз рядом с пунктом Группировка (уровни группировки) или Сортировка (порядок сортировки). Появится список доступных полей
-
В нижней части этого списка нажмите выражение, чтобы открыть построитель выражений.
-
Введите выражение в поле выражения (верхнем поле) построителя выражений. Убедитесь, что выражение начинается с оператора равенства (=).
К началу страницы
Управление запуском макрокоманд
В некоторых случаях выполнять макрокоманду или набор макрокоманд в макросе нужно только в том случае, если выполнено определенное условие. Предположим, необходимо, чтобы макрокоманда выполнялась только в том случае, если значение в поле не меньше 10. Для этого в блоке Если макроса можно задать соответствующее условие с помощью выражения.
Например, допустим, что текстовое поле называется «Позиции». Выражение для условия будет выглядеть следующим образом:
[Items]>=10
ПРОЦЕДУРА
-
В области навигации щелкните правой кнопкой мыши макрос, который необходимо изменить, и выберите в контекстном меню пункт Конструктор.
-
Перейдите к блоку Если, который требуется изменить, или добавьте блок Если из области «Каталог макрокоманд».
-
Щелкните верхнюю строку блока Если.
-
Введите условное выражение в поле или нажмите кнопку Построить
рядом с ячейкой выражения, чтобы открыть построитель выражений.
Можно ввести только логическое выражение, которое принимает значения Trueили False. Макрокоманды внутри блока Если будут выполняться только в том случае, если условие примет значение True.
К началу страницы
См. также
Работа с построителем выражений
Введение в использование выражений
Руководство по синтаксису выражений
Примеры выражений
В этой статье речь поговорим про вычисляемые поля в запросах Access. В запросе, как и в таблице, для каждой записи могут производиться вычисления с числовыми, строковыми значениями или значениями дат с использованием данных из одного или нескольких полей. Результат вычисления образует в таблице запроса новое вычисляемое поле. В отличие от вычисляемых полей таблицы, вычисляемые поля запроса в исходных таблицах базы данных новых полей не создают. При каждом выполнении запроса производятся вычисления на основе текущих значений полей.
В выражениях вычисляемых полей помимо имен полей могут использоваться константы и функции. В результате обработки выражения может получаться только одно значение.
Задача 1. В таблице ТОВАР имеются поля ЦЕНА и СТАВКА_НДС, вычислите цену с учетом НДС и сравните ее с полученной в вычисляемом поле таблицы Цена с НДС.
- Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС и Цена с НДС (рис. 4.6).
- Для подсчета цены с учетом НДС создайте вычисляемое поле, записав в пустой ячейке строки Поле (Field) выражение [ЦЕНА]+[ЦЕНА]*[СТАВКА_НДС].
- Для отбора записей со значением выше 5000 в вычисляемом поле в строку Условие отбора (Criteria) введите > 5000
- После ввода выражения система по умолчанию формирует имя вычисляемого поля Выражение 1, которое становится заголовком столбца в таблице с результатами выполнения запроса. Это имя вставится перед выражением [ЦЕНА]+[ЦЕНА]*[СТАВКА_НДС]. Для каждого нового вычисляемого поля в запросе номер выражения увеличивается на единицу. Имя вычисляемого поля отделяется от выражения двоеточием. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстно-зависимом меню выберите Свойства (Properties) поля и в строку Подпись (Caption) введите новое имя поля ― Цена с НДС1. Теперь в таблице с результатами выполнения запроса в заголовке вычисляемого столбца отобразится это имя. Имя поля может быть исправлено также непосредственно в бланке запроса.
- Для отображения результата выполнения запроса щелкните на кнопке Выполнить (Run) в группе Результаты (Results). Вычисляемое поле таблицы и за-проса имеют одинаковые значения.
- Измените в одной из записей запроса цену товара. Значения в обоих вычисляемых полях будут моментально пересчитаны.
- Для формирования сложного выражения в вычисляемом поле или условии отбора целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования.
- Вызовите построитель выражений (Expression Builder), нажав кнопку Построитель (Builder) в группе Настройка запроса (Query Setup) ленты Конструктор (Design), или выбрав Построить (Build) в контекстно-зависимом меню. Курсор мыши должен быть установлен предварительно в ячейке ввода выражения.
- В левой части окна Построитель выражений (Expression Builder) (рис. 4.7) выберите таблицу ТОВАР, на которой построен запрос. Справа отобразится список ее полей. Последовательно выбирайте нужные поля и операторы, двойным щелчком вставляя в выражение. Выражение сформируется в верхней части окна. Обратите внимание, построитель перед именем поля указал имя таблицы, которой оно принадлежит, и отделил его от имени поля восклицательным знаком.
- Завершите процесс построения выражения в вычисляемом поле, щелкнув на кнопке ОК.
- Сохраните запрос под именем ― Цена с НДС и закройте его.
- Выполните сохраненный запрос, выделив его в области навигации и выбрав в контекстном меню команду Открыть (Open).
Задача 2. В вычисляемых полях и условиях отбора можно использовать встроенные функции. В Access определено более 150 функций.
Пусть необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице НАКЛАДНАЯ дата отгрузки хранится в поле ДАТА_ОТГ с типом данных Дата/время (Date/Time).
- Создайте в режиме конструктора запрос на выборку для таблицы НАКЛАДНАЯ. Перетащите в бланк запроса поля НОМ_НАКЛ и КОД_СК (рис. 4.8).
- Создайте вычисляемое поле в пустой ячейке строки Поле (Field), записав туда одно из выражений: Format([НАКЛАДНАЯ]![ДАТА_ОТГР];»mmmm») ― эта функция возвратит пол-ное название месяца
или Format([НАКЛАДНАЯ]![ДАТА_ОТГР];»mm») ― эта функция возвратит номер месяца. - Для отбора накладных, выписанных в заданном месяце, в вычисляемом поле в строку Условие отбора (Criteria) введите название месяца, например март (рис. 4.8), или номер месяца, например 3 в соответствии с параметром в функции Format.
- Выполните запрос, нажав кнопку Выполнить (Run) в группе Результаты (Results) на вкладке ленты Работа с запросами | Конструктор (Query Tools | Design).
- Запишите в вычисляемом поле функцию Month(НАКЛАДНАЯ!ДАТА_ОТГ), и убедитесь, что эта функция возвращает выделенный из даты номер месяца.
- Для выборки всех строк, относящихся ко второму кварталу, в строку Условие отбора (Criteria) введите оператор Between 4 And 6, определяющий, попадает ли значение выражения в указанный интервал.
- Запишите в вычисляемом поле выражение MonthName(Month(НАКЛАДНАЯ!ДАТА_ОТГ)) и убедитесь, что функция MonthName преобразует номер месяца в его полное на-звание.
Для закрепления смотрим видеоурок:
Параметрический запрос Access тут.
Содержание
- 1 Access формула в запросе
- 2 Как считать в Access
- 3 Добавление вычисляемого поля в таблицу
- 3.1 Создание вычисляемого поля в режиме таблицы
- 3.2 Изменение вычисляемого поля в режиме таблицы
В этой статье речь поговорим про вычисляемые поля в запросах Access. В запросе, как и в таблице, для каждой записи могут производиться вычисления с числовыми, строковыми значениями или значениями дат с использованием данных из одного или нескольких полей. Результат вычисления образует в таблице запроса новое вычисляемое поле. В отличие от вычисляемых полей таблицы, вычисляемые поля запроса в исходных таблицах базы данных новых полей не создают. При каждом выполнении запроса производятся вычисления на основе текущих значений полей.
В выражениях вычисляемых полей помимо имен полей могут использоваться константы и функции. В результате обработки выражения может получаться только одно значение.
Задача 1. В таблице ТОВАР имеются поля ЦЕНА и СТАВКА_НДС, вычислите цену с учетом НДС и сравните ее с полученной в вычисляемом поле таблицы Цена с НДС.
- Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС и Цена с НДС (рис. 4.6).
- Для подсчета цены с учетом НДС создайте вычисляемое поле, записав в пустой ячейке строки Поле (Field) выражение +*.
- Для отбора записей со значением выше 5000 в вычисляемом поле в строку Условие отбора (Criteria) введите > 5000
- После ввода выражения система по умолчанию формирует имя вычисляемого поля Выражение 1, которое становится заголовком столбца в таблице с результатами выполнения запроса. Это имя вставится перед выражением +*. Для каждого нового вычисляемого поля в запросе номер выражения увеличивается на единицу. Имя вычисляемого поля отделяется от выражения двоеточием. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстно-зависимом меню выберите Свойства (Properties) поля и в строку Подпись (Caption) введите новое имя поля ― Цена с НДС1. Теперь в таблице с результатами выполнения запроса в заголовке вычисляемого столбца отобразится это имя. Имя поля может быть исправлено также непосредственно в бланке запроса.
- Для отображения результата выполнения запроса щелкните на кнопке Выполнить (Run) в группе Результаты (Results). Вычисляемое поле таблицы и за-проса имеют одинаковые значения.
- Измените в одной из записей запроса цену товара. Значения в обоих вычисляемых полях будут моментально пересчитаны.
- Для формирования сложного выражения в вычисляемом поле или условии отбора целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования.
- Вызовите построитель выражений (Expression Builder), нажав кнопку Построитель (Builder) в группе Настройка запроса (Query Setup) ленты Конструктор (Design), или выбрав Построить (Build) в контекстно-зависимом меню. Курсор мыши должен быть установлен предварительно в ячейке ввода выражения.
- В левой части окна Построитель выражений (Expression Builder) (рис. 4.7) выберите таблицу ТОВАР, на которой построен запрос. Справа отобразится список ее полей. Последовательно выбирайте нужные поля и операторы, двойным щелчком вставляя в выражение. Выражение сформируется в верхней части окна. Обратите внимание, построитель перед именем поля указал имя таблицы, которой оно принадлежит, и отделил его от имени поля восклицательным знаком.
- Завершите процесс построения выражения в вычисляемом поле, щелкнув на кнопке ОК.
- Сохраните запрос под именем ― Цена с НДС и закройте его.
- Выполните сохраненный запрос, выделив его в области навигации и выбрав в контекстном меню команду Открыть (Open).
Задача 2. В вычисляемых полях и условиях отбора можно использовать встроенные функции. В Access определено более 150 функций.
Пусть необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице НАКЛАДНАЯ дата отгрузки хранится в поле ДАТА_ОТГ с типом данных Дата/время (Date/Time).
- Создайте в режиме конструктора запрос на выборку для таблицы НАКЛАДНАЯ. Перетащите в бланк запроса поля НОМ_НАКЛ и КОД_СК (рис. 4.8).
- Создайте вычисляемое поле в пустой ячейке строки Поле (Field), записав туда одно из выражений: Format(!;»mmmm») ― эта функция возвратит пол-ное название месяца
или Format(!;»mm») ― эта функция возвратит номер месяца. - Для отбора накладных, выписанных в заданном месяце, в вычисляемом поле в строку Условие отбора (Criteria) введите название месяца, например март (рис. 4.8), или номер месяца, например 3 в соответствии с параметром в функции Format.
- Выполните запрос, нажав кнопку Выполнить (Run) в группе Результаты (Results) на вкладке ленты Работа с запросами | Конструктор (Query Tools | Design).
- Запишите в вычисляемом поле функцию Month(НАКЛАДНАЯ!ДАТА_ОТГ), и убедитесь, что эта функция возвращает выделенный из даты номер месяца.
- Для выборки всех строк, относящихся ко второму кварталу, в строку Условие отбора (Criteria) введите оператор Between 4 And 6, определяющий, попадает ли значение выражения в указанный интервал.
- Запишите в вычисляемом поле выражение MonthName(Month(НАКЛАДНАЯ!ДАТА_ОТГ)) и убедитесь, что функция MonthName преобразует номер месяца в его полное на-звание.
Для закрепления смотрим видеоурок:
Параметрический запрос Access тут.
В разделе Компьютеры, Связь на вопрос Формулы и условия в ACCESS заданный автором Невроз лучший ответ это =IIf(=1;2;3),
где:
— поле в котором вводятся значение;
1 — значение которое будет равняться ;
2 — значение которое подставляется если значения =1;
3 — значение которое будет подставляться, если <> 1
Ответ от
2 ответа
Привет! Вот подборка тем с ответами на Ваш вопрос: Формулы и условия в ACCESS
Ответ от ONLAIN
ACCESS это база данных! Она построенна на построении определенных запросов! Ипрортом закачиваеш исходные форму из EXCEL далее составляешь апросы исходя из данной закаченной формы! ACCESS и EXCEL-разные!
Ответ от Ёергей Победаш
Создать вычисляемое поле можно только в запросе или в форме, для этого есть построитель выражений с исчерпывающей справкой. А чтобы внести вычисленное значение в таблицу, надо создать запрос на обновление. Автоматизировать эти действия можно либо используя макросы, либо VisualBasic.
Ответ от Кроссворд
целый урок по функции IIF в microsoft access на youtube:
Ответ от
2 ответа
Привет! Вот еще темы с нужными ответами:
Правила составления выражений в Access мы уже описывали (см. разд. «Использование выражений в запросах»гл. 4). Поэтому здесь мы остановимся в первую очередь на вычисляемых полях формы и опишем, где они нужны и как их создать.
Внимание
Формулы для вычислений в Access записываются с помощью специального синтаксиса, который диктует правила записи формул и в выражениях Access и в процедурах на VBA. Этот синтаксис несколько отличается от принятого в математике, однако во многом на него похож и интуитивно понятен. Описание синтаксиса вычислительных формул приведено в разд. «Выражения в Access»гл. 4.
Как считать в Access
Выполните добавление вычисляемых полей для того, чтобы сделать расчет в Access. Создать такое поле вы можете в форме, запросе или отчете, по необходимости. Чтобы выполнить подсчет в вычисляемом поле введите выражение. Оно представляет собой формулу, которая аналогична формулам в Excel, только в ней используются не ссылки на ячейки, а имена таблиц и полей.
Используйте при построении выражений элементы: идентификаторы (имя поля, заключенное в квадратные скобки, например, поле «Цена» из таблицы «Товары» – ; операторы (+, -, *, /); функции, константы, значения (численные).
Создайте вычисляемый запрос, для этого перейдите во вкладку «Запросы» базы данных, выберите «Создать» – «В режиме конструктора». Выберите используемые в расчетах поля нужных таблиц или запросов. В новом поле введите в имя поля выражение, например, =*.
Если в запросе вы используете поля одной таблицы, тогда в выражении необязательно указывать ее имя. Если же в нем учувствуют несколько таблиц, тогда к шимени поля добавляйте название таблицы, как приведено во втором шаге. После этого запустите запрос на выполнение с помощью восклицательного знака на панели инструментов.
Воспользуйтесь построителем выражений для создания сложных вычислений в запросе. Для этого в свободном поле щелкните мышкой в имени, выберите «Построить». Обратите внимание, что в верхней части построителя находится текстовое поле выражения, которое предназначено для записи выражения. Чуть ниже размещается строка с арифметическими операторами. В нижней области размещены три текстовых поля, которые используются для выбора элементов, вставляемых в выражение.
Введите выражение вручную либо сформируйте его из готовых функций и операторов. К примеру, выберите таблицы и поля для добавления в запрос, между ними с панели построителя добавляйте арифметические операторы, либо функции из соответствующего раздела. После этого щелкните «ОК». Вычисляемый запрос в Access готов.
Зачем и как чистить компьютер от пыли
Сегодня в интернете можно найти множество статей про то, что нужно регулярно чистить компьютер от.
Как конвертировать PDF-файлы в документы Word Что за вирус WannaCry decrypt0r и как от него защититься обычному пользователю Как защитить компьютер от вируса Красный квадрат Как записать образ на CD/DVD диск с помощью программы ImgBurn
Добавление вычисляемого поля в таблицу
Применяется к: Access2016 Access 2013 Access 2010 Дополнительно. Меньше
Важно : Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь. в качестве справочного материала.
В Access можно создать поля таблицы, в которых вычисляются значения. Расчеты могут включать значения из полей в одной таблице, а также встроенные функции Access.
В таком вычисляемом поле нельзя использовать поля из других таблиц или запросов.
Результаты вычислений доступны только для чтения.
Вычисляемые поля доступны только в базах данных Access, используя формат файла ACCDB.
Необходимо использовать Microsoft Access 2010 или более поздней версии.
Создание вычисляемого поля в режиме таблицы
Откройте таблицу, дважды щелкнув ее в области навигации.
Прокрутите таблицу по горизонтали до крайнего правого столбца и нажмите в заголовке столбца кнопку Щелкните, чтобы добавить .
В появившемся списке выберите пункт Вычисляемое поле и укажите тип данных результата.
Откроется построитель выражений Access.
Начните вводить формулу расчета, которая требуется для этого поля, например:
Примечание : Необязательно ставить в начале выражения знак равенства (=).
Нажмите кнопку ОК .
Приложение Access добавит вычисляемое поле и выделит его заголовок, чтобы можно было ввести имя поля.
Введите имя вычисляемого поля и нажмите клавишу ВВОД.
Дополнительные сведения о создании выражений см. в статье Создание выражения .
Изменение вычисляемого поля в режиме таблицы
Откройте таблицу, дважды щелкнув ее в области навигации.
Выделите вычисляемое поле, которое необходимо изменить.
На вкладке Поля в группе Свойства нажмите кнопку Изменить выражение .
Откроется построитель выражений Access.
Внесите необходимые изменения в поле выражения для вычисления.
Примечание : Необязательно ставить в начале выражения знак равенства (=).
Нажмите кнопку ОК .
Примечание :Отказ от ответственности относительно машинного перевода. Данная статья была переведена с помощью компьютерной системы без участия человека. Microsoft предлагает эти машинные переводы, чтобы помочь пользователям, которые не знают английского языка, ознакомиться с материалами о продуктах, услугах и технологиях Microsoft. Поскольку статья была переведена с использованием машинного перевода, она может содержать лексические,синтаксические и грамматические ошибки.
В этой статье речь поговорим про вычисляемые поля в запросах Access. В запросе, как и в таблице, для каждой записи могут производиться вычисления с числовыми, строковыми значениями или значениями дат с использованием данных из одного или нескольких полей. Результат вычисления образует в таблице запроса новое вычисляемое поле. В отличие от вычисляемых полей таблицы, вычисляемые поля запроса в исходных таблицах базы данных новых полей не создают. При каждом выполнении запроса производятся вычисления на основе текущих значений полей.
В выражениях вычисляемых полей помимо имен полей могут использоваться константы и функции. В результате обработки выражения может получаться только одно значение.
Задача 1. В таблице ТОВАР имеются поля ЦЕНА и СТАВКА_НДС, вычислите цену с учетом НДС и сравните ее с полученной в вычисляемом поле таблицы Цена с НДС.
Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС и Цена с НДС (рис. 4.6). Для подсчета цены с учетом НДС создайте вычисляемое поле, записав в пустой ячейке строки Поле (Field) выражение +*. Для отбора записей со значением выше 5000 в вычисляемом поле в строку Условие отбора (Criteria) введите 5000 После ввода выражения система по умолчанию формирует имя вычисляемого поля Выражение 1, которое становится заголовком столбца в таблице с результатами выполнения запроса. Это имя вставится перед выражением +*. Для каждого нового вычисляемого поля в запросе номер выражения увеличивается на единицу. Имя вычисляемого поля отделяется от выражения двоеточием. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстно-зависимом меню выберите Свойства (Properties) поля и в строку Подпись (Caption) введите новое имя поля ― Цена с НДС1. Теперь в таблице с результатами выполнения запроса в заголовке вычисляемого столбца отобразится это имя. Имя поля может быть исправлено также непосредственно в бланке запроса. Для отображения результата выполнения запроса щелкните на кнопке Выполнить (Run) в группе Результаты (Results). Вычисляемое поле таблицы и за-проса имеют одинаковые значения. Измените в одной из записей запроса цену товара. Значения в обоих вычисляемых полях будут моментально пересчитаны. Для формирования сложного выражения в вычисляемом поле или условии отбора целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования. Вызовите построитель выражений (Expression Builder), нажав кнопку Построитель (Builder) в группе Настройка запроса (Query Setup) ленты Конструктор (Design), или выбрав Построить (Build) в контекстно-зависимом меню. Курсор мыши должен быть установлен предварительно в ячейке ввода выражения. В левой части окна Построитель выражений (Expression Builder) (рис. 4.7) выберите таблицу ТОВАР, на которой построен запрос. Справа отобразится список ее полей. Последовательно выбирайте нужные поля и операторы, двойным щелчком вставляя в выражение. Выражение сформируется в верхней части окна. Обратите внимание, построитель перед именем поля указал имя таблицы, которой оно принадлежит, и отделил его от имени поля восклицательным знаком. Завершите процесс построения выражения в вычисляемом поле, щелкнув на кнопке ОК. Сохраните запрос под именем ― Цена с НДС и закройте его. Выполните сохраненный запрос. выделив его в области навигации и выбрав в контекстном меню команду Открыть (Open).
Задача 2. В вычисляемых полях и условиях отбора можно использовать встроенные функции. В Access определено более 150 функций.
Пусть необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице НАКЛАДНАЯ дата отгрузки хранится в поле ДАТА_ОТГ с типом данных Дата/время (Date/Time).
- Создайте в режиме конструктора запрос на выборку для таблицы НАКЛАДНАЯ. Перетащите в бланк запроса поля НОМ_НАКЛ и КОД_СК (рис. 4.8).
- Создайте вычисляемое поле в пустой ячейке строки Поле (Field), записав туда одно из выражений: Format(!;mmmm) ― эта функция возвратит пол-ное название месяца
или Format(!;mm) ― эта функция возвратит номер месяца. - Для отбора накладных, выписанных в заданном месяце, в вычисляемом поле в строку Условие отбора (Criteria) введите название месяца, например март (рис. 4.8), или номер месяца, например 3 в соответствии с параметром в функции Format.
- Выполните запрос, нажав кнопку Выполнить (Run) в группе Результаты (Results) на вкладке ленты Работа с запросами | Конструктор (Query Tools | Design).
- Запишите в вычисляемом поле функцию Month(НАКЛАДНАЯ!ДАТА_ОТГ), и убедитесь, что эта функция возвращает выделенный из даты номер месяца.
- Для выборки всех строк, относящихся ко второму кварталу, в строку Условие отбора (Criteria) введите оператор Between 4 And 6, определяющий, попадает ли значение выражения в указанный интервал.
- Запишите в вычисляемом поле выражение MonthName(Month(НАКЛАДНАЯ!ДАТА_ОТГ)) и убедитесь, что функция MonthName преобразует номер месяца в его полное на-звание.
Параметрический запрос Access тут .
Проблемы с базой данной Access? Не можете сдать курсовую и получить зачет? Заходите в группу ВКонтакте vk.com/access_community . Поможем!
Showing 2 comments
Подскажите формулу для вычисляемого поля итоговая дата. К примеру есть начальная дата к ней прибавляется количество суток, итоговая ячейка должна заполниться автоматически
Источники: Комментариев пока нет!
Автор:
Robert Simon
Дата создания:
19 Июнь 2021
Дата обновления:
18 Май 2023
Содержание
- Шаг 1
- Шаг 2
- Шаг 3
- Шаг 4
- Шаг 5
- Шаг 6
Microsoft Access 2007 — это программа для работы с базами данных, которую можно использовать для хранения, сравнения и управления данными. Некоторые версии пакета Microsoft Office 2007 включают эту программу и могут работать с другими программами Office. Одна из особенно полезных функций Access 2007 — это возможность использовать формулы или выражения для различных операций. Вы можете применить эти формулы к различным полям или записям в базе данных, чтобы получить желаемые результаты.
Шаг 1
Перейдите к расположению базы данных Access и дважды щелкните файл, чтобы открыть его в Access.
Шаг 2
Щелкните правой кнопкой мыши любую форму в столбце «Все таблицы» в левой части экрана.
Шаг 3
Нажмите на опцию «Дизайн».
Шаг 4
Щелкните правой кнопкой мыши текстовое поле, в которое вы хотите добавить формулу, и выберите «Свойства». В правой части экрана откроется новый столбец под названием «Свойства».
Шаг 5
Щелкните вкладку «Данные» в верхней части столбца «Таблица свойств» и щелкните поле «Источник управления».
Напишите формулу, которую хотите запустить. Например, если вы хотите просуммировать все значения определенного поля, напишите «= Sum ([xxxxxx])», где «xxxxxx» будет именем поля, в котором есть значения, которые вы хотите суммировать.
Download PC Repair Tool to quickly find & fix Windows errors automatically
Did you know that you could calculate fields in the query in Microsoft Access? If the user wants a calculated field in a query, the user needs to input a name for the calculated field, a colon, and the calculations in one of the columns in the Field row of the query’s design grid.
A calculated field is an individual record calculation because each calculation only involves fields in a specific record.
Open Microsoft Access.
Create a table or an existing table.
Create a Query.
To create a Query, go to the Create tab and click Query Design in the Queries group.
Over on the right, you will see an Add Table window; choose the table you want to calculate.
Then click Add Selected Tables on the bottom of the Add Table window.
The table will appear on the upper part of the window.
On the bottom window, you will see the Design Grid.
A Design Grid is a tool that creates Query by placing fields from the selected table in the window’s upper parts to the lower parts of the window.
On the Field row, click on the drop-down arrow and choose the fields for each column you want to include in the Query.
In this article, we want to calculate the total number of birth rates in three years. The years include 2018, 2019, and 2020.
At the last of the column, we will add the field; ‘Total Number of Births in Three Years.’
We will right-click the ‘Total Number of Births in Three Years’ field.
In the shortcut menu, click Zoom.
A Zoom dialog box will open.
In the Zoom dialog box, you will see the field text inside it; due to you selecting it.
Write the formula according to the calculation you are making.
For example – Total Number of Births in Three Years: [2018] +[2019] +[2020].
Then press OK.
Then click Run in the Results group on the left.
You will see the result of your calculation.
I hope this helps; if you have questions, please comment below.
Read: How to add Comments in PowerPoint slides.
Shantel has studied Data Operations, Records Management, and Computer Information Systems. She is quite proficient in using Office software. Her goal is to become a Database Administrator or a System Administrator.