Научете се да създавате израз

Можете да използвате изрази, за да правите всякакви неща с вашите данни. Можете например да определите колко дни са изминали от изпращането на дадена поръчка, или да комбинирате СобственоИме и ФамилноИме в ПълноИме. В следващите раздели ще ви покажем как да създадете израз стъпка по стъпка.

В тази статия

Изчисляване на стойности за контроли във формуляри и отчети

Създаване на изчисляемо поле в заявка

Задаване на стойности по подразбиране за поле в таблица

Добавяне на валидиращо правило към поле или запис в таблица

Групиране и сортиране на данни в отчети

Използване на изрази като критерии на заявка

Създаване на изчисляемо поле в таблица

Задаване на стойности по подразбиране за контроли

Добавяне на валидиращо правило към контрола

Управление на макрокомандите за изпълнение

Изчисляване на стойности за контроли във формуляри и отчети

Когато използвате израз като източник на данни за контрола, вие създавате изчисляема контрола. Нека например да имате отчет, който показва множество записи за наличности, и искате да създадете обща сума в долния колонтитул на отчет, която сумира всички елементи от редовете в отчета.

Обща сума за отчет.

За да изчислите общата сума, поставете контрола "текстово поле" в долния колонтитул на формуляра и задайте свойството ControlSource на текстовото поле на следния израз:

      =Sum([table_field])

В този случай table_field е името на полето, съдържащо стойностите на междинните суми. Това поле може да идва от таблица или заявка. Функцията Sum изчислява общата сума на всички стойности на table_field.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху формуляра, който искате да промените, след което в контекстното меню щракнете върху Изглед на оформление или Режим на проектиране.

  2. Изберете контролата, в която искате да въведете израз.

  3. Ако списъкът със свойства още не е показан, натиснете F4, за да го покажете.

  4. За да създадете израз ръчно, в раздела Данни в списъка със свойства щракнете върху свойството ControlSource на текстовото поле и след това въведете =, последвано от останалата част на вашия израз. Например, за да изчислите междинната сума, показана по-горе, въведете =Sum([table_field]), като заместите table_field с името на вашето поле.

  5. За да създадете израз с помощта на конструктора на изрази, щракнете върху бутона Изграждане Изображение на бутон в полето на свойството.

    След като завършите своя израз, списъкът със свойства ще изглежда така:

    Израз за свойството ''Източник за контролата'' на текстово поле.

Най-горе на страницата

Използване на изрази като критерии на заявка

Критериите се използват в заявките, за да стеснят резултатите от заявките. Критериите се въвеждат като израз, и Access връща само тези редове, които съответстват на израза.

Нека например да искате да видите всички поръчки, чиято дата на експедиране е през първите три месеца на 2017 г. За да въведете критериите, трябва да въведете следния израз в клетката Критерии за колоната за дата и час на вашата заявка. Този пример използва колона за дата и час, наречена Дата на експедиране. За да дефинирате диапазон от дати, въведете вашите критерии по следния начин:

Between #1/1/2017# And #3/31/2017#

Колоната Дата на експедиране ще изглежда приблизително така:

израз в реда за критерии на мрежата на заявка.

За всеки запис в таблицата "Поръчки", ако стойността в колоната Дата на експедиране попада в интервала от дати, които сте задали, записът се включва в изходните данни от заявката. Забележете, че в израза датата се загражда със знаците (#). Access третира стойността между тези знаци като данни от тип "Дата/час". Това ви позволява да извършвате изчисления върху тези стойности, например изваждане на една дата от друга.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху заявката, която искате да промените, и щракнете върху Режим на проектиране в контекстното меню.

  2. Щракнете в клетката Критерии в колоната, за която искате да въведете критериите.

  3. За да създадете ръчно вашия израз, въведете израз за критерии. Не поставяйте оператора = пред израза за критериите.

  4. За да създадете своя израз с помощта на конструктора на изрази, на лентата щракнете върху Проектиране и след това в групата Настройка на заявката щракнете върху Конструктор Изображение на бутон .

    Ако искате по-голяма област, в която да редактирате израза, поставете курсора в клетката Критерии и след това натиснете SHIFT+F2, за да покажете полето Мащабиране:

    израз в диалоговия прозорец ''мащабиране''.

    Съвет   За да направите текста по-четлив, изберете Шрифт.

Най-горе на страницата

Създаване на изчисляемо поле в заявка

Да предположим, че проектирате заявка и искате да покажете резултатите от изчисление, което използва други полета от заявката. За да създадете изчисляемо поле, трябва да въведете израз в празна клетка в реда Поле на вашата заявка. Ако например имате заявка, съдържаща поле Quantity и поле Unit Price, можете да умножите двете полета, за да създадете изчисляемо поле за Extended Price, като въведете следния израз в реда Поле на заявката:

Extended Price: [Quantity] * [Unit Price]

Поставянето пред израза на текста Extended Price: дава на новата колона името Extended Price. Това име често се нарича псевдоним. Ако не зададете псевдоним, Access ще създаде такъв, например Expr1.

Използване на израз за създаване на изчисляемо поле в заявка.

Когато изпълните заявка, Access извършва изчислението във всеки ред, както е показано на следната илюстрация:

Изчисляемо поле, показано в изглед на лист с данни.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху заявката, която искате да промените, и след това щракнете върху Режим на проектиране в контекстното меню.

  2. Щракнете върху клетката Поле в колоната, в която искате да създадете изчисляемото поле.

  3. За да създадете ръчно вашия израз, трябва да го въведете.

    Не поставяйте пред израза за критерии оператора = ; вместо това започнете израза с описателен етикет, последван от двоеточие. Например въведете Extended Price:, за да зададете етикета за израз, който създава изчисляемо поле с име Extended Price. След това въведете след двоеточието критериите за вашия израз.

  4. За да създадете своя израз с помощта на конструктора на изрази, на лентата щракнете върху Проектиране и след това в групата Настройка на заявката щракнете върху Конструктор.

Най-горе на страницата

Създаване на изчисляемо поле в таблица

В Access можете да създадете изчисляемо поле в таблица. Това премахва нуждата от отделна заявка за извършване на изчисления. Ако например имате таблица, която съдържа количеството, цената и данъчната ставка за всеки елемент в една поръчка, можете да добавите изчисляемо поле, което показва общата цена по следния начин:

[Quantity]*([UnitPrice]+([UnitPrice]*[TaxRate]))

Изчислението не може да включва полета от други таблици или заявки и резултатите от изчислението са само за четене.

ПРОЦЕДУРА

  1. Отворете таблицата чрез двукратно щракване върху нея в навигационния екран.

  2. Превъртете екрана хоризонтално до най-дясната колона в таблицата и щракнете върху заглавието на колоната Щракнете, за да добавите.

  3. В списъка, който се показва, щракнете върху Изчисляемо поле и след това щракнете върху желания тип на данните на резултата. Access показва конструктора на изрази.

  4. Въведете желаното изчисление за това поле, например:

    [Quantity] * [Unit Price]

    При изчисляемо поле изразът не започва със знак за равенство (=).

  5. Щракнете върху OK.

    Access добавя изчисляемото поле и след това осветява заглавката на полето, така че да можете да въведете име на полето.

  6. Въведете име за изчисляемото поле и натиснете ENTER.

Най-горе на страницата

Задаване на стойности по подразбиране за поле в таблица

Можете да използвате израз, за да зададете стойност по подразбиране за поле в таблица – стойност, която Access използва за нови записи, освен ако е предоставена друга стойност. Нека например да искате да вмъквате автоматично датата и часа в поле, наречено "Стара_дата" винаги, когато някой добави нов запис. За да направите това, можете да използвате следния израз:

Now()

ПРОЦЕДУРА

  1. В навигационния екран щракнете двукратно върху таблицата, която искате да промените.

    Access отваря таблицата в табличен изглед.

  2. Изберете полето, което искате да промените.

  3. В лентата щракнете върху Полета и в групата Свойства щракнете върху Стойност по подразбиране. Access показва конструктора на изрази.

  4. Въведете вашия израз в полето, като не забравяте да започнете израза със знак за равенство (=).

Забележка    Ако обвържете контрола с поле от таблица, и контролата и полето имат стойности по подразбиране, стойността по подразбиране на контролата има приоритет пред полето от таблицата.

Най-горе на страницата

Задаване на стойности по подразбиране за контроли

Друго обичайно място за използване на израз е в свойството Стойност по подразбиране на контрола. Свойството Стойност по подразбиране на контрола е като свойството Стойност по подразбиране на поле в таблица. Ако например използвате текущата дата като стойност по подразбиране за текстово поле, можете да използвате следния израз.

Date()

Този израз използва функцията Date, за да върне текущата дата, но без часа. Ако обвържете текстовото поле с поле от таблица и полето има стойност по подразбиране, стойността по подразбиране на контролата има приоритет пред полето на таблицата. Често е по-добре да зададете свойството Стойност по подразбиране за полето на таблицата. По този начин, ако базирате няколко контроли за различни формуляри върху едно и също поле на таблица, към всяка контрола ще се прилага една и съща стойност по подразбиране, което ще ви помогне да сте сигурни, че във всеки формуляр се въвеждат приемливи стойности.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху формуляра, който искате да промените, след което в контекстното меню щракнете върху Режим на проектиране или Изглед на оформление.

  2. Изберете контролата, която искате да промените.

  3. Ако списъкът със свойства още не е показан, натиснете F4, за да го покажете.

  4. Щракнете върху раздела Всички в листа със свойствата и след това върху полето на свойството Стойност по подразбиране.

  5. Въведете израза или щракнете върху бутона Създай Изображение на бутон в полето на свойството, за да създадете израз с помощта на конструктора на изрази.

Най-горе на страницата

Добавяне на валидиращо правило към поле или запис в таблица

Изразите са много полезни за проверяване на данни, докато се въвеждат в базата данни, защото не допускат неправилни данни. В таблиците има два вида валидиращи правила: валидиращи правила на поле (които предпазват потребителите от въвеждане на неправилни данни в едно поле) и валидиращи правила на записи (които предпазват потребителите от създаване на записи, които не отговарят на валидиращото правило). И в двата вида валидиращи правила се използват изрази.

Нека например да имате таблица, наречена Inventory с поле, наречено Units On Hand, и искате да зададете правило, което налага на потребителите да въвеждат стойности, по-големи или равни на нула. С други думи, наличностите не може никога да са отрицателно число. Можете да направите това с помощта на следния израз като валидиращо правило за полето в полето Units On Hand:

 >=0

ПРОЦЕДУРА: Въвеждане на валидиращо правило за поле или запис

  1. В навигационния екран щракнете двукратно върху таблицата, която искате да промените. Това отваря таблицата в изглед на лист с данни.

  2. За валидиращо правило за поле изберете полето, което искате да промените.

  3. На лентата щракнете върху Полета, след това в групата Проверка на поле щракнете върху Проверка и след това щракнете върху Правило за проверка на поле или Правило за проверка на запис. Access показва конструктора на изрази.

  4. Започнете да въвеждате желаните критерии. Например за валидиращо правило за поле, което изисква всички стойности да са по-големи или равни на нула, въведете следното:

     >=0

    Не поставяйте пред израза знак за равенство (=).

Изразите във валидиращите правила са булеви, което означава, че те са или True, или False за всяка дадена входяща стойност. Валидиращото правило за стойността трябва да бъде True, в противен случай Access не записва въведената стойност и показва съобщение за проверка, показващо грешка. В този пример, ако въведете стойност за полето Units On Hand, която е по-малка от нула, валидиращото правило е False и Access не приема стойността. Ако не сте въвели съобщение за проверка, както е описано в следващия раздел, Access показва собствено съобщение, за да посочи, че въведената стойност е забранена от валидиращото правило за полето.

ПРОЦЕДУРА: Въвеждане на съобщение за проверка

За да направите вашата база данни по-лесна за използване, можете да въвеждате съобщения за проверка по ваш избор. Те заместват общите съобщения, които Access показва, когато данните не съответстват на валидиращо правило. Можете да използвате съобщение за проверка по избор, за да предоставите конкретна информация, помагаща на потребителя да въведе правилните данни, например "Стойността на "Units On Hand" не може да бъде отрицателно число".

  1. В навигационния екран щракнете двукратно върху таблицата, която искате да промените.

    Access отваря таблицата в табличен изглед.

  2. За съобщение за проверка на поле изберете полето, към което ще добавите валидиращото правило.

  3. В лентата щракнете върху Полета, след това в групата Проверка на поле щракнете върху Проверка и след това щракнете върху Съобщение за проверка на поле или Съобщение за проверка на запис.

  4. В диалоговия прозорец Въведете съобщение за проверка въведете съобщението, което искате да се появява, когато данните не съответстват на валидиращото правило, и след това щракнете върху OK.

Най-горе на страницата

Добавяне на валидиращо правило към контрола

Освен полетата и записите на таблиците, контролите също имат свойство Валидиращо правило, което може да приема израз. Нека например да използвате формуляр, за да въвеждате интервали от дати за отчет, и искате да сте сигурни, че началната дата не е преди 1/1/2017. Можете да зададете свойствата Валидиращо правило и Текст на проверка за валидност за текстовото поле, където въвеждате началната дата, по следния начин:

Свойство

Настройка

Правило за проверка

>=#1/1/2017#

Текст на проверката за валидност

Не може да въведете по-ранна дата от 1/1/2017.

Ако се опитате да въведете дата преди 1/1/2017, се показва съобщение с текста в свойството ValidationText. Ако не е въведен текст в полето на свойството ValidationText, Access показва общо съобщение. След като щракнете върху OK, Access ви връща към текстовото поле.

Задаването на валидиращо правило за поле на таблица налага правилото навсякъде в базата данни, където това поле се модифицира. За разлика от това задаването на валидиращо правило за контрола във формуляр налага правилото само когато този формуляр се използва. Задаването на валидиращи правила отделно за полета на таблица и за контроли във формуляри може да е полезно, ако искате да зададете различни валидиращи правила за различни потребители.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху формуляра, който искате да промените, след което в контекстното меню щракнете върху Режим на проектиране или Изглед на оформление.

  2. Щракнете с десния бутон върху контролата, която искате да промените, и щракнете върху Свойства в контекстното меню. Access показва списъка със свойства за контролата.

  3. Щракнете върху раздела Всички и след това върху полето на свойството Правило за проверка.

  4. Въведете израза или щракнете върху бутона Създай Изображение на бутон в полето на свойството, за да създадете израз с помощта на конструктора на изрази.

    Не поставяйте пред израза оператора =.

  5. За да персонализирате текста, който се показва, когато потребителят въведе данни, които не съответстват на валидиращото правило, въведете желания текст в свойството Текст на проверка за валидност.

Най-горе на страницата

Групиране и сортиране на данни в отчети

Екранът Групиране, сортиране и обща сума се използва за определяне на нивата на групиране и реда на сортиране за данните в отчет. Обикновено групирате или сортирате в поле, което сте избрали от списък. Ако обаче искате да групирате или сортирате по изчисляема стойност, можете вместо това да въведете израз.

Групирането е процесът на комбиниране на колони, съдържащи дублиращи се стойности. Нека например вашата база данни да съдържа информация за продажби за офиси в различни градове и един от отчетите във вашата база данни да е с име "Продажби по градове". Заявката, която предоставя данните за този отчет, групира данните по вашите стойности за град. Този тип групиране може да направи вашата информация по-лесна за четене и разбиране.

За разлика от това сортирането е процесът на подреждане на редовете (записите) в резултатите от вашите заявки. Можете например да сортирате записите по стойностите на техните първични ключове (или друг набор от стойности в друго поле) във възходящ или низходящ ред или да ги сортирате по един или повече знаци в указан ред, например в азбучен ред.

ПРОЦЕДУРА: Добавяне на групиране и сортиране в отчет

  1. В навигационния екран щракнете с десния бутон върху отчета, който искате да промените, след което в контекстното меню щракнете върху Изглед на оформление или Режим на проектиране.

  2. В лентата щракнете върхуПроектиране и в групата Групиране и общи суми щракнете върху Групиране и сортиране. Под отчета се показва екранът Групиране, сортиране и общи суми.

  3. За да добавите към отчета ниво на групиране, щракнете върху Добавяне на група.

  4. За да добавите към отчета ред на сортиране, щракнете върху Добавяне на сортиране.

    В екрана се появява ново ниво на групиране или ред на сортиране, както и списък с полета, съдържащи данни за отчета. Следващата фигура показва типично ново ниво на групиране (групиране по "Категория") и ред на сортиране (сортиране по "Производител"), плюс списък, съдържащ наличните полета за групиране и сортиране:

    Избиране на опцията за израз в екрана ''Групиране, сортиране и общи суми''.

  5. Под списъка с налични полета щракнете върху Израз, за да започнете да използвате конструктора на изрази.

  6. Въведете израза, който искате да използвате, в полето за изрази (горното поле) на конструктора на изрази. Уверете се, че изразът започва със знака за равенство (=).

ПРОЦЕДУРА: Добавяне на израз към съществуваща група или сортиране

  1. В навигационния екран щракнете с десния бутон върху отчета, който искате да промените, след което в контекстното меню щракнете върху Изглед на оформление или Режим на проектиране.

  2. Щракнете върху нивото на групата или реда на сортирането, които искате да промените.

  3. Щракнете върху насочената надолу стрелка до Групиране по (за нива на групиране) или Сортирай по (за ред на сортиране). Появява се списък, съдържащ наличните полета.

  4. В дъното на списъка, съдържащ полетата, щракнете върху Израз, за да започнете да използвате конструктора на изрази.

  5. Въведете израз в полето за изрази (горното поле) на конструктора на изрази. Уверете се, че изразът започва със знака за равенство (=).

Най-горе на страницата

Управление на макрокомандите за изпълнение

В някои случаи може да искате да извършите действие или последователност от действия в макрос само ако е изпълнено определено условие. Нека например да искате една макрокоманда да се изпълнява само когато стойността в едно текстово поле е по-голяма или равна на 10. За да зададете това правило, използвайте израз в блок If в макроса, за да дефинирате условието в макроса.

В този пример се предполага, че текстовото поле е с име "Items". Вашият израз, задаващ условието, е:

[Items]>=10

Израз, използван в блок ''If'' в макрос.

ПРОЦЕДУРА

  1. В навигационния екран щракнете с десния бутон върху макроса, който искате да промените, и след това щракнете върху Режим на проектиране в контекстното меню.

  2. Щракнете върху блока If, който искате да модифицирате, или добавете блок If от екрана "Каталог на действията".

  3. Щракнете върху най-горния ред на блока If.

  4. Въведете вашия условен израз в полето или щракнете върху бутона Изграждане Изображение на бутон до полето с израз, за да започнете да използвате конструктора на изрази.

Изразът, който въвеждате, трябва да е булев, което означава, че е или True, или False. Макрокомандите в блока If се изпълняват само когато условието е True.

Най-горе на страницата

Вж. също

Използване на конструктора на изрази

Въведение в изразите

Ръководство за синтаксиса на изрази

Примери на изрази

Разширете уменията си
Преглед на обучението
Получавайте първи новите функции
Присъединете се към участниците в Office Insider

Беше ли полезна тази информация?

Благодарим ви за обратната връзка!

Благодарим ви за вашата обратна връзка. Изглежда, че ще бъде полезно да ви свържем с един от нашите агенти по поддръжката на Office.

×