Функции за низове и как да ги използвате
Applies ToAccess за Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

С функциите за низове можете да създавате изрази в Access, които манипулират текст по различни начини. Например може да искате да покажете само част от пореден номер във формуляр. Или може да се наложи да съедините (конкатенирате) няколко низа, като например фамилно име и собствено име. Ако все още не сте разбираеми за изразите, вижте Създаване на израз.

Ето списък на някои от най-често срещаните операции с низове в Access и функциите, които бихте използвали, за да ги изпълните:

За…

Използвайте...

Например...

Резултати

Връщане на знаци от началото на низ

Функция Left

=Left([Сериен номер];2)

Ако [SerialNumber] е "CD234", резултатът е "CD".

Връщане на знаци от края на низ

Функция Right

=Right([Сериен номер];3)

Ако [SerialNumber] е "CD234", резултатът е "234".

Намиране на позицията на знак в низ

Функция InStr

=InStr(1;[СобственоИме];"i")

Ако [СобственоИме] е "Колин", резултатът е 4.

Връщане на знаци от средата на низ

Функция Mid

=Mid([Сериен номер];2;2)

Ако [SerialNumber] е "CD234", резултатът е "D2".

Изрязване на водещи или завършващи интервали от низ

Функции LTrim, RTrim и Trim

=Trim([СобственоИме])

Ако [FirstName] е " Колин ", резултатът е "Колин".

Съединяване на два низа заедно

Оператор знак плюс (+) *

=[СобственоИме] + [ФамилноИме]

Ако [СобственоИме] е "Колин" и [ФамилноИме] е Уилкокс, резултатът е "ColinWilcox"

Съединяване на два низа заедно с интервал между тях

Оператор знак плюс (+) *

=[СобственоИме] + " " + [ФамилноИме]

Ако [СобственоИме] е "Колин" и [ФамилноИме] е Уилкокс, резултатът е "Колин Уилкокс"

Промяна на регистъра на низ на главни или малки букви

UCase функция или LCase функция

=UCase([СобственоИме])

Ако [СобственоИме] е "Колин", резултатът е "КОЛИН".

Определяне на дължината на низ

Функция Len

=Len([СобственоИме])

Ако [СобственоИме] е "Колин", резултатът е 5.

* Добре, значи не е функция, а оператор. Това обаче е най-бързият начин да обедините низове. В настолна база данни можете също да използвате оператора амперсанд (&) за конкатенация.

Има още много функции, свързани с текст, в Access. Добър начин да научите повече за тях е да отворите конструктора на изрази и да прегледате списъците с функции. Конструкторът на изрази е наличен почти навсякъде, където искате да създадете израз – обикновено има малък бутон Изграждане , който изглежда по следния начин: Изображение на бутон

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

Показване на конструктора на изрази в настолна база данни

  1. Отворете настолна база данни (.accdb).

  2. Натиснете F11, за да отворите навигационния екран, ако все още не е отворен.

  3. Ако вече имате наличен формуляр, щракнете с десния бутон върху него в навигационния екран и щракнете върху Изглед на оформление. Ако нямате формуляр, с който да работите, щракнете върху Създаване на > формуляр.

  4. Щракнете с десния бутон върху текстово поле във формуляра и щракнете върху Свойства.

  5. В списъка със свойства щракнете върху Всички > Източник за контролата и щракнете върху бутона Изграждане , Изображение на бутон от дясната страна на полето на свойството Източник за контролата .Бутонът ''Компилация'' в списъка със свойства.

  6. Под Елементи на изрази разгънете възела Функции и щракнете върху Вградени функции.

  7. Под Категории изрази щракнете върху Текст.

  8. Под Стойности на изрази щракнете върху различните функции и прочетете кратките описания в долната част на конструктора на изрази.

    Забележка:  Не всички от тези функции са налични във всички контексти; Access филтрира списъка автоматично в зависимост от това кои от тях работят във всеки контекст.

Комбиниране на текстови функции за по-голяма гъвкавост

Някои функции за низове имат числови аргументи, които в някои случаи трябва да изчислявате всеки път, когато извиквате функцията. Например функцията Left взема низ и число, като в =Left(SerialNumber, 2). Това е чудесно, ако знаете, че винаги ви трябват левите два знака, но какво става, ако броят на знаците, които ви трябват, се различава в различните елементи? Вместо просто "твърдо кодиране" броят на знаците, можете да въведете друга функция, която я изчислява.

Ето пример за поредни номера, всеки от които има тире някъде в низа. Позицията на тирето обаче варира:

Сериен номер

3928-29993

23-9923

333-53234

3399940-444

Ако искате да показвате само числата отляво на тирето, трябва да извършвате изчисление всеки път, за да разберете къде е тирето. Една от опциите е да направите нещо подобно:

=Left([Пореден номер];InStr(1;[Сериен номер];"-")-1)

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

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

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