Как сделать вычисляемое поле в форме access?

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

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

Задача 1. В таблице ТОВАР имеются поля ЦЕНА и СТАВКА_НДС, вычислите цену с учетом НДС и сравните ее с полученной в вычисляемом поле таблицы Цена с НДС.

  1. Создайте в режиме конструктора запрос на выборку для таблицы ТОВАР. Перетащите в бланк запроса поля НАИМ_ТОВ, ЦЕНА, СТАВКА_НДС и Цена с НДС (рис. 4.6).
  2. Для подсчета цены с учетом НДС создайте вычисляемое поле, записав в пустой ячейке строки Поле (Field) выражение +*.
  3. Для отбора записей со значением выше 5000 в вычисляемом поле в строку Условие отбора (Criteria) введите > 5000
  4. После ввода выражения система по умолчанию формирует имя вычисляемого поля Выражение 1, которое становится заголовком столбца в таблице с результатами выполнения запроса. Это имя вставится перед выражением +*. Для каждого нового вычисляемого поля в запросе номер выражения увеличивается на единицу. Имя вычисляемого поля отделяется от выражения двоеточием. Для изменения имени установите курсор мыши в вычисляемом поле бланка запроса и нажмите правую кнопку мыши. В контекстно-зависимом меню выберите Свойства (Properties) поля и в строку Подпись (Caption) введите новое имя поля ― Цена с НДС1. Теперь в таблице с результатами выполнения запроса в заголовке вычисляемого столбца отобразится это имя. Имя поля может быть исправлено также непосредственно в бланке запроса.
  5. Для отображения результата выполнения запроса щелкните на кнопке Выполнить (Run) в группе Результаты (Results). Вычисляемое поле таблицы и за-проса имеют одинаковые значения.
  6. Измените в одной из записей запроса цену товара. Значения в обоих вычисляемых полях будут моментально пересчитаны.
  7. Для формирования сложного выражения в вычисляемом поле или условии отбора целесообразно использовать построитель выражений. Построитель позволяет выбрать необходимые в выражении имена полей из таблиц, запросов, знаки операций, функции. Удалите выражение в вычисляемом поле и используйте построитель для его формирования.
  8. Вызовите построитель выражений (Expression Builder), нажав кнопку Построитель (Builder) в группе Настройка запроса (Query Setup) ленты Конструктор (Design), или выбрав Построить (Build) в контекстно-зависимом меню. Курсор мыши должен быть установлен предварительно в ячейке ввода выражения.
  9. В левой части окна Построитель выражений (Expression Builder) (рис. 4.7) выберите таблицу ТОВАР, на которой построен запрос. Справа отобразится список ее полей. Последовательно выбирайте нужные поля и операторы, двойным щелчком вставляя в выражение. Выражение сформируется в верхней части окна. Обратите внимание, построитель перед именем поля указал имя таблицы, которой оно принадлежит, и отделил его от имени поля восклицательным знаком.
  10. Завершите процесс построения выражения в вычисляемом поле, щелкнув на кнопке ОК.
  11. Сохраните запрос под именем ― Цена с НДС и закройте его.
  12. Выполните сохраненный запрос, выделив его в области навигации и выбрав в контекстном меню команду Открыть (Open).

Задача 2. В вычисляемых полях и условиях отбора можно использовать встроенные функции. В Access определено более 150 функций.
Пусть необходимо выбрать все накладные, по которым производилась отгрузка в заданном месяце. В таблице НАКЛАДНАЯ дата отгрузки хранится в поле ДАТА_ОТГ с типом данных Дата/время (Date/Time).

  1. Создайте в режиме конструктора запрос на выборку для таблицы НАКЛАДНАЯ. Перетащите в бланк запроса поля НОМ_НАКЛ и КОД_СК (рис. 4.8).
  2. Создайте вычисляемое поле в пустой ячейке строки Поле (Field), записав туда одно из выражений: Format(!;»mmmm») ― эта функция возвратит пол-ное название месяца
    или Format(!;»mm») ― эта функция возвратит номер месяца.
  3. Для отбора накладных, выписанных в заданном месяце, в вычисляемом поле в строку Условие отбора (Criteria) введите название месяца, например март (рис. 4.8), или номер месяца, например 3 в соответствии с параметром в функции Format.
  4. Выполните запрос, нажав кнопку Выполнить (Run) в группе Результаты (Results) на вкладке ленты Работа с запросами | Конструктор (Query Tools | Design).
  5. Запишите в вычисляемом поле функцию Month(НАКЛАДНАЯ!ДАТА_ОТГ), и убедитесь, что эта функция возвращает выделенный из даты номер месяца.
  6. Для выборки всех строк, относящихся ко второму кварталу, в строку Условие отбора (Criteria) введите оператор Between 4 And 6, определяющий, попадает ли значение выражения в указанный интервал.
  7. Запишите в вычисляемом поле выражение MonthName(Month(НАКЛАДНАЯ!ДАТА_ОТГ)) и убедитесь, что функция MonthName преобразует номер месяца в его полное на-звание.

Для закрепления смотрим видеоурок:

Параметрический запрос Access тут.

Простейшим вычисляемым полем является поле, в котором должна выводиться текущая дата. Чтобы создать такое поле:

  1. Создайте свободный элемент управления типа Поле (Text Box) в нужном месте формы.
  2. Прямо в поле введите выражение =Date (). Знак равенства обязателен.
  3. Откройте окно Свойства (Properties) для этого элемента и задайте для свойства Формат поля (Format) желаемый формат даты, например Длинный формат даты (Long Date).
  4. Установите длину поля таким образом, чтобы в нем помещалось необходимое количество символов.
  5. Измените название метки этого текстового поля. Созданное поле будет выглядеть, как показано на рис. 9.47.

Рис. 9.47. Вычисляемое поле

Обычно для создания вычисляемых полей выбирают именно элемент управления Текстовое поле, хотя это и необязательно. Допускается использовать для этого любые элементы управления, имеющие свойство Данные (Control Source).

Именно в свойстве Данные (Control Source) должно быть задано выражение, которое вычисляет значение этого элемента. Ввод выражения допускается прямо в элемент управления, как мы и сделали это в примере. Однако, если выражение достаточно длинное, его неудобно вводить прямо в поле. Можно ввести выражение в ячейку свойства Данные (Control Source) в окне Свойства (Properties), а если выражение не помещается в ячейке свойства, просто нажать комбинацию клавиш + и открыть окно Область ввода (Zoom). Еще можно воспользоваться Построителем выражений.

Вычисляемые поля создаются чаще всего в табличных или ленточных формах для отображения столбца с какими-нибудь вычисленными значениями. Например, стоимость товара рассчитывается как значение выражения Цена * Количество. Для отображения таких расчетных данных используют два способа:

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

Замечание

При ссылках на поля в выражениях обязательно использование квадратных скобок, если название поля содержит пробелы; в остальных случаях можно обходиться без них.

Первый способ в большинстве случаев предпочтительнее, т. к. такой запрос может быть использован не только в одной форме, но и в отчетах и в других формах. Примером такой организации расчетов может служить форма «Подчиненная форма заказов» (Orders Subform) базы данных «Борей». Она основана на запросе «Сведения о заказах» (Order Details Extended), в котором создано вычисляемое поле «ОтпускнаяЦена» (ExtendedPrice), содержащее формулу:

ОтпускнаяЦена:

 CCur(.**(1-)/100}*100 

в примере английской версии Access:

ExtendedPrice:

 CCur(.UnitPrice**(1-)/100)*100 

Свойство Данные (Control Source) элемента управления ОтпускнаяЦена

(ExtendedPrice) в форме имеет значение «ОтпускнаяЦена» (ExtendedPrice) — имя вычисляемого поля запроса.

Замечание

В приведенной выше формуле CCur — это функция, которая преобразует значение выражения в тип Денежный (Currency).

Sorter etter

Как создать вычисляемые поля в форме AccessУроки по Microsoft Access

7 måneder siden

Если вы не знаете, как создать вычисляемые поля на форме базы данных Microsoft Access, то посмотрите это видео….

Как создать ВЫЧИСЛЯЕМЫЕ запросы в базе AccessУроки по Microsoft Access

År siden

Если вы не знаете, как создаются запросы с вычислениями в базе данных Microsoft Access, то посмотрите это видео….

3.10 Вычисляемые поля Microsoft Access 2010.Dmitrii Dmitrii

2 år siden

Раздел 3. Создание базы данных и работа с таблицами. Основы системы управления базами данных Microsoft Access 2010.

Microsoft Access № 72: вычисление суммы в таблицах, запросах, формах и отчётах AccessАндрей Домостой

År siden

Как создать вычисляемые поля суммы в таблицах, запросах, формах и отчётах Access? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗА…

60 Вычисляемые поля в AccessСИЛА ЗНАНИЯ

8 måneder siden

Урок 7 Access.Запросы Часть 5 Вычисления и функцииMoodle Donguu

3 år siden

Как сделать таблицы в базе данных Microsoft Access 2016Уроки по Microsoft Access

År siden

Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…

Как связать таблицы в базе данных Microsoft Access 2016Уроки по Microsoft Access

År siden

Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…

Видеокурс «База данных Access «Отдел кадров»Андрей Домостой

6 måneder siden

Демонстрация видеокурса «База данных Access «Отдел кадров» КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg…

Microsoft Access № 31: суммирование в Access значений многозначного поля со спискомАндрей Домостой

År siden

Как суммировать в Access все выбранные значения многозначного поля со списком ? КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТ…

Какие типы данных существуют в базе данных Microsoft AccessУроки по Microsoft Access

År siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете какие типы данны…

Microsoft Access № 34: cумма в смешанном поле Access (числа и текст)Андрей Домостой

3 år siden

Как подсчитать в Access сумму всех чисел в поле смешанного типа (числа и текст)? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ…

Access 2013 Урок 30 Использование вычисляемых полей со значениями датыIT видео

2 år siden

Как задать фильтр при помощи полей со списком AccessУроки по Microsoft Access

7 måneder siden

Если вы не знаете, как задать фильтр при помощи полей со списком в базе данных Microsoft Access, то посмотрите это…

вычисляемые запросы в AccessMarat Asanov

5 år siden

вычисляемые запросы в Access.

Как создать поле со списком на форме AccessУроки по Microsoft Access

7 måneder siden

Если вы не знаете, как создать поле со списком на форме базы данных Microsoft Access, то посмотрите это видео. Разбе…

вычисляемые запросы в AccessAlixander1990

8 år siden

Краткое руководство без звука))

1.5 часть — Вычисляемое поле «Количество»GTIFEMBI

2 år siden

Microsoft Access № 13: автоматическое заполнение поля макросом данных AccessАндрей Домостой

3 år siden

Как при помощи макроса данных Access автоматически задать значение логического поля (женский или мужской…

Как открыть форму Access на ОПРЕДЕЛЕННОЙ записиУроки по Microsoft Access

7 måneder siden

Если вы не знаете, как открыть форму на определенной записи в базе данных Microsoft Access, то посмотрите это видео….

Microsoft Access № 12: совершенствование логического поля AccessАндрей Домостой

3 år siden

Как сделать, чтобы в логическом поле Access вместо флажков были нужные текстовые значения? КУПИТЬ ВИДЕОКУРСЫ…

ЛЕГКОЕ создание таблиц в базе данных Microsoft AccessУроки по Microsoft Access

2 år siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете с чего начать…

Флажки и группа переключателей в базе данных AccessУроки по Microsoft Access

7 måneder siden

Если вы не знаете, как добавить элементы флажки и переключатели на форму Access, то посмотрите это видео. Также…

Создание базы данных расходы на закупку в AccessMix Fix

År siden

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

Как создать отчеты в Microsoft Access за 10 минутУроки по Microsoft Access

3 år siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…

Microsoft Access № 68: фильтрация при помощи полей со списком AccessАндрей Домостой

5 år siden

Фильтрация в форме Access нужных записей при помощи полей со списком Access. КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТЬ БАЗУ:…

Основные свойства полей таблицы Microsoft AccessУроки по Microsoft Access

År siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Если вы не знаете какие свойства…

Microsoft Access № 21: создание в Access зависимых полей со спискомАндрей Домостой

3 år siden

Создадим в Access зависимые поля со списком. КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте: vk.c…

Как определить ГОД, КВАРТАЛ, МЕСЯЦ, ДЕНЬ НЕДЕЛИ в запросе AccessУроки по Microsoft Access

År siden

Если вы не знаете, как создаются запросы с условием в базе данных Microsoft Access, то посмотрите это видео. Продолж…

Создание отчета в Access с помощью мастераУроки по Microsoft Access

7 måneder siden

Если вы не знаете как создать отчет в Access с помощью мастера, то посмотрите это видео. В этом уроке поговорим…

Access 2013 Урок 12 Объединение полей с помощью вычисляемого типа данныхIT видео

2 år siden

Готовая база данных Access Успеваемость студентов (1 из 4)Уроки по Microsoft Access

11 måneder siden

Если вы не знаете что такое готовая база данных Access, то посмотрите это видео. ВСЕГО ЗА 4 УРОКА мы создадим…

КАК СОЗДАТЬ ВЫЧИСЛЯЕМОЕ ПОЛЕ В EXCELЯрослав Будников

6 måneder siden

В этом уроке вы узнаете, как создавать вычисляемое поле в сводной таблице excel. Подпишись: no-clip.com/user/cЯрос…

7.1 Вычисления Microsoft Access 2010.Dmitrii Dmitrii

2 år siden

Раздел 7. Вычисления в запросах. Запросы к базам данных Microsoft Access 2010.

2 Свойства полей веб таблиц и вычисляемые поляНиколаеви4

År siden

автор: mmt.teachpro.ru.

Вычисляемые поляСергей Лонский

3 år siden

Как сделать ЗАВИСИМЫЕ поля со списком в базе Access за 10 минутУроки по Microsoft Access

7 måneder siden

Если вы не знаете как создать зависимые поля со списком в базе данных Access, то посмотрите это видео. Всего…

Уроки по Microsoft Access

3 år siden

Канал для тех, кто хочет научиться делать базы данных в программе MS Access. Канал будет полезен студентам, кото…

Kanaler

Электронные таблицы или базы данных: Excel vs AccessSpecialistTV

År siden

В чем принципиальная разница между таблицами Excel и базами данных Access? Какими преимуществами обладает кажда…

Как создать ЗАПРОС С УСЛОВИЕМ в базе данных MS ACCESSУроки по Microsoft Access

År siden

Если вы не знаете, как создаются запросы с условием в базе данных Microsoft Access, то посмотрите это видео. Продолж…

Урок 3 Access. Поле со списком для работы с внешним ключомMoodle Donguu

3 år siden

Microsoft Access № 27: запрос Access на создание таблицыАндрей Домостой

3 år siden

Как сделать запрос Access на создание новой таблицы и заполнить её данными? КУПИТЬ ВИДЕОКУРСЫ ИЛИ ЗАКАЗАТЬ…

Запрос на добавление в MS AccessDemaskinas

4 år siden

Microsoft Access № 37: фильтр по форме AccessАндрей Домостой

År siden

Что такое фильтр по форме Access? КУПИТЬ ВИДЕОКУРС ИЛИ ЗАКАЗАТЬ БАЗУ: goo.gl/zgcfyg ВКонтакте: vk.com/access_007 Google :…

Как сделать запросы в базе данных Microsoft Access 2016Уроки по Microsoft Access

År siden

Если вы не знаете как создать базу данных в программе Microsoft Access 2016, то посмотрите это видео. Всего за 6 уроков…

Запит з обчислювальним полемLena7942

5 år siden

Створити запит, в якому до полів пункту 1 додати обчислюване поле, — закупівельна ціна, збільшена на 20 %. Для…

Создание командной кнопки для формы БД AccessУроки по Microsoft Access

10 måneder siden

Если вы не знаете, как создать кнопку в форме Access, то посмотрите это видео. Что вас ждет в этом видео? Разбер…

Вычисляемые поля в Microsoft Office Excel 2010 (24/50)TeachVideo

7 år siden

www.teachvideo.ru/ — тысячи обучающих роликов на нашем сайте бесплатно! При работе со сводными таблицами вы…

Как создать макросы в Microsoft Access за 7 минутУроки по Microsoft Access

3 år siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…

Как создать формы в Microsoft Access за 10 минутУроки по Microsoft Access

3 år siden

Узнайте, как легко и быстро создать базу данных Access — accesshelp.ru/category/uroki/ Готовые базы Access: 7108.ru/g0203 Если…

Если вы не знаете, как создать вычисляемые поля на форме базы данных Microsoft Access, то посмотрите это видео.Разберем пошаговое добавление поля в форму Access.Продолжаем работать с базой данных Access «Интернет магазин». Убедитесь, что программа Microsoft Access очень проста и не требует дополнительных знаний в освоении.Чаевые на развитие канала:Остались вопросы? Пишите в комментариях под видео

Bogdan Bodik

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

Nerfy

Спасибо за информацию.)

mrLumen2

Пора рассказать о… взаимосвязанных (подчиненных) формах, которые взаимосвязаны друг с другом через невидимое поле на основной форме. Это один из самых частых вопросов. (пример есть в базе

Герман Мамичев

Очень грамотно рассказываешь!!!!! Спасибо огромное, если бы бы не ты, не знаю как я бы тут еще делал бы!!!

Денис Шангареев

Добрый вечер.nОчень крутые уроки,для колхоза показал простейший трюк с кнопочной формой -показал чудо.nВопрос:можно ли суммировать логические ячейки,если да то как?n2.как сделать чтоб,к примеру сняли технику с учёта ,вводим дату снятия она автоматом переходила в таблицу архив?nЗаранее благодарен инженер ПТО

Константин

Спасибо! очень интересный урок. И так совпало, что как раз вчера мне нужно было решить похожую задачку. Правда мне ещё нужно было сделать так, чтобы вычисляемое поле заполняло таблицу (т.е. чтобы данные сохранялись в системе, а не просто показывались на форме или в отчёте), и при этом пользователь смог их редактировать.nК сожалению, решить ее с помощью только формул и макросов не смог. Пришлось использовать VBA. Может вы сталкивались с чем-то похожим и знаете другой вариант решения?

Рустам Алиев

Добрый день.nНужна помощь.nnЗадача моя такаяn1. У меня есть товары, которые заказываются на производстве (например, 20000 штук крема).n2. Заказываются по предоплате (предоплатный счет) — 50% (иногда 60%).n3. Далее данный план производства выполняется в течение месяца партиями (факт производства).n4. Суммарный факт производства никогда не равен плану (99% случаев меньше).n5. Мы забираем каждую партию только когда конкретно за нее заплатим оставшиеся 50%.nnНАЙТИ — требуется вычислить общий долг по каждому Плану производства.nnЯ создал таблицу ПЛАН ПРОИЗВОДСТВА, ФАКТ ПРОИЗВОДСТВА (связь 1-8) и СЧЕТА. Партии из ФАКТ ПРОИЗВОДСТВА привязываются к плану (связь 1-8). Таблица СЧЕТА содержит разные типы счетов и суммы за товар или услуги: ОСНОВНОЙ, ПРЕДОПЛАТНЫЙ. ПРЕДОПЛАТНЫЙ счет привязывается к ПЛАН ПРОИЗВОДСТВА, а ОСНОВНОЙ к ФАКТУ ПРОИЗВОДСТВА (в списке фильтрую и показываю в зависимости от таблице свой набор счетов).nnТак как один план выполняется многими партиями и никогда не выполняется на 100% (но теоретически может). Соответственно, мне понадобилась таблица, где я бы отразил одновременно и план и факт (одной цифрой на данный момент), а также стоимость и их разницы.nnДля этого я создал запрос ПРОИЗВОДСТВО, куда свел Товар (их несколько) за все время (помесячно), вывел плановый заказ (в штуках) и цену. Далее, я создал вспомогательный запрос, где сгруппировал факт по КОДУ ПЛАН ПРОИЗВОДСТВА и СУММировал по ФАКТ (шт.). Далее вывел в запрос ПРОИЗВОДСТВО суммарный ФАКТ (шт). Имея ЦЕНА и ФАКТ — перемножил и получил фактическую сумму долга.nnИ все бы ничего, но теперь нужно рассчитать сумму нашего долга по заказу (ПЛАНу). Для этого я вывел в таблицу сумму предоплат (есть пустые ячейки, не везде она была, иногда работали чисто по факту), посчитал сумму оплаченных счетов за данный заказ (тоже есть пустые ячейки, если еще не было ни одной оплаты по данному заказу).nnИ теперь самое интересное: СТ-СТЬ ФАКТ

Уроки по Microsoft Access

Если вы не знаете, как создать вычисляемые поля на форме базы данных Microsoft Access, то посмотрите это видео.nРазберем пошаговое добавление поля в форму Access.nnПродолжаем работать с базой данных Access