Съдържание
Индекс 🔎︎

# Функции за електронни таблици

Този раздел съдържа описанията на функциите за електронни таблици с примери.

За достъп до тази команда...

Вмъкване - Функция - Категория Електронна таблица

## ERROR.TYPE

Връща число, отговарящо на определен тип грешка, или стойността за грешка #N/A, ако няма грешка.

## ADDRESS

Връща адрес на клетка (обръщение) като текст според зададени номера на ред и колона. Можете да укажете дали адресът да бъде интерпретиран като абсолютен (например $A$1), относителен (например A1) или смесен (A$1 или $A1). Можете също да зададете името на листа.

За съвместимост функциите ADDRESS и INDIRECT поддържат незадължителен параметър, който определя дали да се използва записът R1C1 за адреси вместо обикновения формат A1.

Във функцията ADDRESS параметърът се вмъква като четвърти параметър, измествайки незадължителното име на лист към пета позиция.

Във функцията INDIRECT параметърът се добавя като втори параметър.

И в двете функции ако аргументът е вмъкнат със стойност 0, се използва записът R1C1. Ако аргументът не е даден или има стойност, различна от 0, се използва записът A1.

При записа R1C1 функцията ADDRESS връща низове с адреси, в които имената на листове са отделени с удивителна (!), а INDIRECT очаква удивителна като разделител за име на лист. При запис A1 и двете функции използват точка (.) като разделител на имена.

При отваряне на документи във формат ODF 1.0/1.1 ако функциите ADDRESS имат четвърти параметър – име на лист, той ще бъде преместен като пети параметър. Ще бъде вмъкнат нов четвърти параметър със стойност 1.

При запазване на документ във формат ODF 1.0/1.1 ако функциите ADDRESS имат четвърти параметър, той ще бъде премахнат.

Не записвайте електронна таблица в стария формат ODF 1.0/1.1, ако сте използвали функцията ADDRESS със стойност 0 за четвъртия параметър.

Функцията INDIRECT се съхранява без преобразуване във формат ODF 1.0/1.1. Ако присъства втори параметър, по-старите версии на Calc ще връщат грешки за тази функция.

#### Синтаксис

ADDRESS(Ред; Колона; Абс; A1; "Лист")

Ред е номерът на ред в обръщението към клетка.

Колона е номерът (не буквата) на колона в обръщението към клетка.

Абс определя типа на обръщението:

1: абсолютно ($A$1)

2: абсолютен ред, относителна колона (A$1)

3: относителен ред, абсолютна колона ($A1)

4: относително (A1)

A1 (незадължителен) – ако е 0, се използва записът R1C1. Ако този параметър отсъства или има стойност, различна от 0, се използва записът A1.

Лист е името на листа. То трябва да бъде заградено в двойни кавички.

### Пример

=ADDRESS(1;1;2;"Лист2") връща Лист2.A$1

Ако формулата по-горе е в клетката B2 на текущия лист, а клетката A1 от лист 2 съдържа стойността -6, можете да я посочите непряко чрез функция в B2, като въведете =ABS(INDIRECT(B2)). Резултатът е абсолютната стойност на обръщението към клетка, зададено в B2, която в примера е 6.

## AREAS

Връща броя на отделните области, принадлежащи на дадена съставна област. Областта може да съдържа съседни клетки или само една клетка.

Функцията очаква един аргумент. Ако зададете няколко области, трябва да ги оградите в допълнителни скоби. Няколко области могат да се въведат с разделител точка и запетая (;), но той автоматично се превръща в оператор тилда (~). Тилдата служи за обединяване на области.

#### Синтаксис

AREAS(Обръщение)

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

#### Пример

=AREAS(A1:B3;F2;G1) връща 3, тъй като аргументът представлява обръщение към три области и/или клетки. След въвеждане се конвертира до =AREAS((A1:B3~F2~G1)).

=AREAS(Всички) връща 1, ако сте дефинирали област с име „Всички“ в Данни - Дефиниране на област.

## CHOOSE

Използва индекс, за да върне стойност от списък с до 30 стойности.

#### Синтаксис

CHOOSE(Индекс; Стойност1; …; Стойност30)

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

Стойност1, Стойност2, ..., Стойност30 е списъкът от отделни стойности или обръщения към клетки.

#### Пример

=CHOOSE(A1;B1;B2;B3;"Днес";"Вчера";"Утре") връща съдържанието на клетката B2 за A1 = 2; за A1 = 4 функцията връща текста „Днес“.

## COLUMN

Връща номера на колона от обръщение. Ако обръщението е към клетка, се връща номерът на колоната й, а при обръщение към област съответните номера на колони се връщат в масив от един ред, ако формулата е въведена като формула за масив. Ако функцията COLUMN с параметър – обръщение към област не е използвана като формула за масив, се намира само номерът на колона на първата клетка от областта.

#### Синтаксис

COLUMN(Обръщение)

Обръщение e обръщение към клетка или област от клетки, чиято първа колона да бъде намерена.

Ако не е въведено обръщение, се намира номерът на колона на клетката, съдържаща формулата. LibreOffice Calc автоматично насочва обръщението към текущата клетка.

#### Пример

=COLUMN(A1) връща 1. Колоната A е първата колона в таблицата.

=COLUMN(C3:E3) връща 3. Колоната C е третата колона в таблицата.

=COLUMN(D3:G10) връща 4, понеже D е четвъртата колона в таблицата и функцията COLUMN не е използвана като формула за масив. (В този случай резултатът винаги е първата стойност от масива.)

{=COLUMN(B2:B7)} и =COLUMN(B2:B7) връщат 2, тъй като обръщението съдържа само колоната B – втората колона в таблицата. Понеже на областите от една колона съответства само един номер на колона, няма значение дали формулата е за масив, или не.

=COLUMN() връща 3, ако формулата е въведена в колоната C.

{=COLUMN(Заек)} връща масива от един ред (3, 4), ако „Заек“ е името на областта (C1:D3).

## COLUMNS

Връща броя на колоните в даденото обръщение.

#### Синтаксис

COLUMNS(Масив)

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

#### Пример

=COLUMNS(B5) връща 1, тъй като една клетка съдържа само една колона.

=COLUMNS(A1:C5) връща 3. Обръщението обхваща три колони.

=COLUMNS(Заек) връща 2, ако Заек е името на областта (C1:D3).

## DDE

Връща резултата от DDE връзка. Ако съдържанието на свързаната област или раздел е променено, върнатата стойност също ще се промени. За да видите обновените връзки, трябва да презаредите електронната таблица или да изберете Редактиране - Връзки. Не се допускат междуплатформени връзки, например от инсталация на LibreOffice в компютър с Windows към документ, създаден на компютър с Linux.

#### Синтаксис

DDE("Сървър"; "Файл"; "Област"; Режим)

Сървър е името на сървърното приложение. Приложенията от LibreOffice имат сървърно име "soffice".

Файл е пълното име на файла заедно с пътя.

Област е областта, съдържаща данните за изчисляване.

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

Режим | Действие
0 или липсва | Използва се числовият формат от стила за клетки „По подразбиране“.
1 | Данните се интерпретират в стандартния формат за английски език (САЩ).
2 | Данните се извличат като текст и не се преобразуват в числа.

#### Пример

=DDE("soffice";"c:\office\document\data1.ods";"Лист1.A1") прочита съдържанието на клетката A1 в Лист1 от документа на LibreOffice Calc с име data1.ods.

=DDE("soffice";"c:\office\document\motto.odt";"Мото на деня") връща мото в клетката, съдържаща формулата. Първо трябва да въведете ред във файла motto.odt, който съдържа текста на мотото и да го направите първи ред на раздел с иметоМото на деня (в LibreOffice Writer, във Вмъкване - Раздел). Ако мотото бъде променено (и записано) в документа на LibreOffice Writer, мотото се обновява във всички клетки на LibreOffice Calc, в които е зададена DDE връзката.

## ERRORTYPE

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

Ако възникне грешка, функцията връща логическа или числова стойност.

Ако щракнете върху клетката, съдържаща грешката, лентата на състоянието показва кода за грешка, вграден в LibreOffice.

#### Синтаксис

ERRORTYPE(Обръщение)

Обръщение съдържа адреса на клетката, в която възниква грешката.

#### Пример

Ако в клетката A1 е изписано Err:518, функцията =ERRORTYPE(A1) връща числото 518.

## GETPIVOTDATA

Функцията GETPIVOTDATA връща като резултат стойност от обобщаваща таблица. Стойността се адресира чрез имена на полета и елементи, така че остава валидна и при промяна в структурата на обобщаващата таблица.

#### Синтаксис

Могат да се използват две различни синтактични дефиниции:

GETPIVOTDATA(ЦелевоПоле; ОбобщаващаТаблица; [Поле 1; Елемент 1; …])

GETPIVOTDATA(ОбобщаващаТаблица; Ограничения)

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

#### Синтаксис

ЦелевоПоле е низ, който посочва някое от полетата с данни в обобщаваща таблица. Низът може да представлява името на колоната – източник или името на полето с данни, както се показва в таблицата (например „Сума - Продажби“).

ОбобщаващаТаблица е обръщение към клетка или област от клетки, разположени в обобщаваща таблица или съдържащи такава. Ако областта от клетки съдържа няколко обобщаващи таблици, се използва последната създадена.

Ако не са зададени двойки Поле n / Елемент n, се връща крайният резултат. В противен случай всяка двойка добавя ограничение, което резултатът трябва да удовлетворява. Поле n е името на поле от обобщаващата таблица. Елемент n е името на елемент от това поле.

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

Ако изходните данни съдържат записи, които са скрити заради настройките на обобщаващата таблица, те се игнорират. Редът на двойките Поле/Елемент не е от значение. В имената на полета и елементи регистърът на буквите няма значение.

Ако не е дадено ограничение за поле за страница, неявно се използва избраната стойност на полето. Ако е дадено такова ограничение, то трябва да съответства на избраната стойност на полето или възниква грешка. Полетата за страница са полетата в горния ляв край на обобщаващата таблица, попълнени чрез областта „Полета за страница“ на диалоговия прозорец Обобщаваща таблица. За всяко такова поле може да бъде избран елемент (стойност), което означава, че само този елемент ще бъде включен в изчислението.

Стойностите на междинни суми от обобщаващата таблица се използват само ако са с функция „автоматично“ (освен стойностите, които са включени в ограничения – вижте Втори синтаксис по-долу).

#### Синтаксис

ОбобщаващаТаблица има същото значение като в първия синтаксис.

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

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

Всеки от останалите записи задава ограничение във вида Поле[Елемент] (със знаците [ и ]) или само Елемент, ако името на елемента е уникално сред всички полета в обобщаващата таблица.

Може да се добави име на функция във формата Поле[Елемент;Функция]. Тогава ще се разглеждат само тези междинни суми, в които е използвана същата функция. Възможните имена на функции са Sum, Count, Average, Max, Min, Product, Count (само за числа), StDev (за извадка), StDevP (за популация), Var (за извадка) и VarP (за популация), като регистърът на буквите е без значение.

## HLOOKUP

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

Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки знак, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в LibreOffice - PreferencesИнструменти - Настройки - PRODUCTNAME Calc - Изчисляване.

Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".

#### Синтаксис

HLOOKUP(КритерийЗаТърсене; Масив; Индекс; ТърсенеВСортираниДиапазони)

За обяснение на параметрите вижте VLOOKUP (колоните и редовете са разменени).

Обработка на празни клетки

## HYPERLINK

Когато щракнете върху клетка, съдържаща функцията HYPERLINK, се отваря съответната хипервръзка.

Ако използвате незадължителния параметър ТекстВКлетката, формулата намира зададения URL, след което показва текста.

За да отворите клетка с хипервръзка чрез клавиатурата, натиснете F2, за да включите режима на редактиране, преместете курсора пред хипервръзката, натиснете Shift+F10 и изберете Отваряне на хипервръзка.

#### Синтаксис

HYPERLINK("URL") или HYPERLINK("URL"; "ТекстВКлетката")

URL указва целта на връзката. Незадължителният параметър ТекстВКлетката е текстът, който се показва в клетката и резултатът на функцията. Ако параметърът ТекстВКлетката не е зададен, стойността на URL се изписва в клетката и се връща като резултат.

За празни клетки и елементи на матрица се връща числото 0.

#### Пример

=HYPERLINK("http://www.example.org") показва текста „http://www.example.org“ в клетката и при щракване стартира хипервръзката http://www.example.org.

=HYPERLINK("http://www.example.org";"Щракнете тук") показва текста „Щракнете тук“ в клетката и при щракване изпълнява хипервръзката http://www.example.org.

=HYPERLINK("http://www.example.org";12345) показва текста числото 12345 и при щракване стартира хипервръзката http://www.example.org.

=HYPERLINK($B4), където клетката B4 съдържа http://www.example.org. Функцията добавя „http://www.example.org“ към URL на клетката с хипервръзката и връща същия текст като резултат от формулата.

=HYPERLINK("http://www.";"Щракнете върху ") & "example.org" показва в клетката текста „Щракнете върху example.org“ и при щракване изпълнява хипервръзката http://www.example.org.

=HYPERLINK("#Лист1.A1";"Към началото") показва текста „Към началото“ и предизвиква преход към клетката Лист1.A1 в същия документ.

=HYPERLINK("file:///C:/writer.odt#Спецификация";"Преход към показалец на Writer") показва текста „Преход към показалец на Writer“, зарежда зададения текстов документ и показва текста, обозначен с показалеца „Спецификация“.

## INDEX

INDEX връща подобласт, зададена чрез номер на ред и колона или незадължителен индекс на подобласт. Според контекста INDEX връща обръщение или съдържание.

#### Синтаксис

INDEX(Обръщение; Ред; Колона; Диапазон)

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

Ред (незадължителен) е индексът на ред в диапазона, за който се връща стойност. Ако е 0 (не е определен ред), ще бъдат върнати всички посочени редове.

Колона (незадължителен) е индексът на колона в диапазона, за който се връща стойност. Ако е 0 (не е определена колона), ще бъдат върнати всички посочени колони.

Диапазон (незадължителен) е индексът на поддиапазон в случай на несвързан диапазон.

#### Пример

=INDEX(Цени;4;1) връща стойността от ред 4 и колона 1 на диапазона с данни, зададен в Данни - Дефиниране с името Цени.

=INDEX(СумаX;4;1) връща стойността от ред 4 и колона 1 на диапазона СумаX, зададен в Лист - Наименувани диапазони и изрази - Дефиниране.

=INDEX(A1:B6;1) връща обръщение към първия ред на A1:B6.

=INDEX(A1:B6;0;1) връща обръщение към първата колона на A1:B6.

=INDEX((multi);4;1) връща стойността от ред 4 и колона 1 от (несвързан) диапазон, наименуван в Лист - Наименувани диапазони и изрази - Дефиниране като multi. Несвързаният диапазон може да се състои от няколко правоъгълни диапазона, всеки от които съдържа ред 4 и колона 1. Ако желаете да посочите втория блок от несвързания диапазон, въведете числото 2 като стойност на параметъра Диапазон.

=INDEX(A1:B6;1;1) посочва стойността в горния ляв ъгъл на областта A1:B6.

=INDEX((multi);0;0;2) връща обръщение към втората област на несвързаната област.

## INDIRECT

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

За съвместимост функциите ADDRESS и INDIRECT поддържат незадължителен параметър, който определя дали да се използва записът R1C1 за адреси вместо обикновения формат A1.

Във функцията ADDRESS параметърът се вмъква като четвърти параметър, измествайки незадължителното име на лист към пета позиция.

Във функцията INDIRECT параметърът се добавя като втори параметър.

И в двете функции ако аргументът е вмъкнат със стойност 0, се използва записът R1C1. Ако аргументът не е даден или има стойност, различна от 0, се използва записът A1.

При записа R1C1 функцията ADDRESS връща низове с адреси, в които имената на листове са отделени с удивителна (!), а INDIRECT очаква удивителна като разделител за име на лист. При запис A1 и двете функции използват точка (.) като разделител на имена.

При отваряне на документи във формат ODF 1.0/1.1 ако функциите ADDRESS имат четвърти параметър – име на лист, той ще бъде преместен като пети параметър. Ще бъде вмъкнат нов четвърти параметър със стойност 1.

При запазване на документ във формат ODF 1.0/1.1 ако функциите ADDRESS имат четвърти параметър, той ще бъде премахнат.

Не записвайте електронна таблица в стария формат ODF 1.0/1.1, ако сте използвали функцията ADDRESS със стойност 0 за четвъртия параметър.

Функцията INDIRECT се съхранява без преобразуване във формат ODF 1.0/1.1. Ако присъства втори параметър, по-старите версии на Calc ще връщат грешки за тази функция.

#### Синтаксис

INDIRECT(Обр; A1)

Обр е обръщение (в текстова форма) към клетка или област, чието съдържание да бъде върнато.

A1 (незадължителен) – ако е 0, се използва записът R1C1. Ако този параметър отсъства или има стойност, различна от 0, се използва записът A1.

Ако отворите електронна таблица на Excel, в която са използвани косвени адреси, изчислени чрез функции за низове, адресите в листа няма да бъдат автоматично преобразувани. Например, адресът на Excel в INDIRECT("[файл]лист!"&B1) няма да се преобразува в адрес на Calc от вида INDIRECT("файл#лист."&B1).

#### Пример

=INDIRECT(A1) дава 100, ако A1 съдържа обръщението C108, а клетката C108 съдържа стойност 100.

=SUM(INDIRECT("a1:" & ADDRESS(1;3))) сумира клетките в областта от A1 до клетката, чийто адрес е зададен като ред 1 и колона 3. С други думи, сумира се областта A1:C1.

## LOOKUP

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

Ако LOOKUP не може да удовлетвори критерия за търсене, тя връща най-голямата стойност от претърсвания вектор, която е по-малка или равна на търсената.

Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки знак, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в LibreOffice - PreferencesИнструменти - Настройки - PRODUCTNAME Calc - Изчисляване.

Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".

#### Синтаксис

LOOKUP(КритерийЗаТърсене; ПретърсванВектор; ВекторСРезултати)

КритерийЗаТърсене е търсената стойност, въведена директно или посочена чрез обръщение.

ПретърсванВектор е претърсваната област от един ред или една колона.

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

Обработка на празни клетки

#### Пример

=LOOKUP(A1;D1:D100;F1:F100) претърсва съответната клетка в областта D1:D100 за числото, въведено в A1. Определя се индексът на намерената стойност, например 12-тата клетка в тази област. След това като резултат се връща съдържанието на 12-тата клетка от вектора за резултата.

## MATCH

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

#### Синтаксис

MATCH(КритерийЗаТърсене; Масив; Тип)

КритерийЗаТърсене е стойността, която да бъде търсена в масива от един ред или колона.

Масив е обръщение към претърсвания масив. Той може да представлява един ред или колона или част от един ред или колона.

Тип може да приема стойностите 1, 0 и -1. Ако Тип = 1 или този незадължителен параметър липсва, се приема, че първата колона на претърсвания масив е сортирана в нарастващ ред. Ако Тип = -1, се приема, че колоната е сортирана в низходящ ред. Това съответства на същата функция в Microsoft Excel.

Ако Тип = 0, се откриват само точни съвпадения. Ако стойността бъде намерена повече от веднъж, функцията връща индекса на първото срещане. Само при Тип = 0 можете да търсете с регулярни изрази (ако е разрешено в настройките за изчисляване) или заместващи знаци (ако е разрешено в настройките за изчисляване).

Ако Тип = 1 или липсва трети параметър, се връща индексът на последната стойност, по-малка или равна на критерия за търсене. Това важи дори когато масивът за търсене не е сортиран. При Тип = -1 се връща първата по-голяма или равна стойност.

Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки знак, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в LibreOffice - PreferencesИнструменти - Настройки - PRODUCTNAME Calc - Изчисляване.

Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".

#### Пример

=MATCH(200;D1:D100) претърсва областта D1:D100, която е сортирана по колоната D, за стойността 200. При достигане на тази стойност се връща номерът на реда, където е намерена тя. Ако при претърсването бъде срещната по-висока стойност, се връща номерът на предишния ред.

## OFFSET

Връща стойността на клетка, отместена с даден брой редове и колони спрямо дадена отправна точка.

#### Синтаксис

OFFSET(Обръщение; Редове; Колони; Височина; Ширина)

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

Редове е броят редове, с който да бъде коригирано обръщението в посока нагоре (при отрицателна стойност) или надолу. Използвайте 0 за оставане на същия ред.

Колони (незадължителен) е броят колони, с който да бъде коригирано обръщението в посока наляво (при отрицателна стойност) или надясно. Използвайте 0 за оставане в същата колона.

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

Ширина (незадължителен) е ширината за областта, която започва от позицията на новото обръщение.

Аргументите Редове и Колони не трябва да водят до обръщение към нулев или отрицателен ред или колона.

Аргументите Височина и Ширина не трябва да водят до нулев или отрицателен брой редове или колони.

Във функциите на LibreOffice Calc параметрите, отбелязани като „незадължителни“, могат да се пропускат само ако след тях не следват още параметри. Например, ако функцията приема четири параметъра, от които последните два са незадължителни, можете да изпуснете четвъртия параметър или третия и четвъртия, но не и само третия.

#### Пример

=OFFSET(A1;2;2) връща стойността от клетката C3 (два реда и две колони, отброени от A1). Ако C3 съдържа стойността 100, тази функция ще върне 100.

=OFFSET(B2:C3;1;1) връща обръщение към B2:C3, отместено с един ред надолу и една колона надясно (C3:D4).

=OFFSET(B2:C3;-1;-1) връща обръщение към B2:C3, изместено с един ред и една колона наляво (A1:B2).

=OFFSET(B2:C3;0;0;3;4) връща обръщение към B2:C3, преоразмерено до 3 реда и 4 колони (B2:E4).

=OFFSET(B2:C3;1;0;3;4) връща обръщение към B2:C3, изместено надолу с един ред и преоразмерено до 3 реда и 4 колони (B3:E5).

=SUM(OFFSET(A1;2;2;5;6)) намира сумата на областта, започваща в клетката C3, висока 5 реда и 6 колони(област=C3:H7).

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

## ROW

Връща номера на ред от обръщение. Ако обръщението е към клетка, се връща номерът на реда й, а при обръщение към област съответните номера на редове се връщат в масив от една колона, ако формулата е въведена като формула за масив. Ако функцията ROW с параметър – обръщение към област не е използвана като формула за масив, се намира само номерът на колона на първата клетка от областта.

#### Синтаксис

ROW(Обръщение)

Обръщение e клетка, област или име на област.

Ако не е въведено обръщение, се намира номерът на реда на клетката, съдържаща формулата. LibreOffice Calc автоматично насочва обръщението към текущата клетка.

#### Пример

=ROW(B3) връща 3, тъй като обръщението посочва третия ред в таблицата.

{=ROW(D5:D8)} връща масива от една колона (5, 6, 7, 8), защото обръщението посочва редовете от 5 до 8.

=ROW(D5:D8) връща 5, тъй като функцията ROW не е използвана като формула за масив и се връща само номерът на първия ред от обръщението.

{=ROW(A1:E1)} и =ROW(A1:E1) връщат 1, защото обръщението съдържа само ред 1 като първа колона в таблицата. (Областите от един ред съответстват на единствен номер на ред, затова няма значение дали формулата е за масив, или не.)

=ROW() връща 3, ако формулата е въведена в ред 3.

{=ROW(Заек)} връща масива от една колона (1, 2, 3), ако „Заек“ е името на областта (C1:D3).

## ROWS

Връща броя на редовете в обръщение или масив.

#### Синтаксис

ROWS(Масив)

Масив е обръщението или наименуваната област, чийто брой редове трябва да се намери.

#### Пример

=ROWS(B5) връща 1, тъй като една клетка съдържа само един ред.

=ROWS(A10:B12) връща 3.

=ROWS(Заек) връща 3, ако „Заек“ е името на областта (C1:D3).

## SHEET

Връща номера на лист от обръщение или низ с име на лист. Ако не въведете параметри, се връща номера на листа, съдържащ формулата.

#### Синтаксис

SHEET(Обръщение)

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

#### Пример

=SHEET(Лист2.A1) връща 2 ако Лист2 е вторият лист в електронната таблица.

## SHEETS

Определя броя на листовете в обръщение. Ако не въведете параметри, връща броя на листовете в текущия документ.

#### Синтаксис

SHEETS(Обръщение)

Обръщение е обръщението към лист или област. Този параметър е незадължителен.

#### Пример

=SHEETS(Лист1.A1:Лист3.G12) връща 3 ако Лист1, Лист2 и Лист3 съществуват точно в този ред.

## STYLE

Прилага стил върху клетката, съдържаща формулата. След определено време може да се приложи друг стил. Тази функция винаги връща стойността 0, което ви позволява да я съберете с друга функция, без да промените резултата. Заедно с функцията CURRENT тя ви позволява да приложите цвят върху клетката в зависимост от стойността. Например: =...+STYLE(IF(CURRENT()>3;"червено";"зелено")) прилага стила „червено“ върху клетката, ако стойността е по-голяма от 3, иначе се прилага стилът„зелено“. И двата формата за клетка трябва вече да са дефинирани.

#### Синтаксис

STYLE("Стил"; Време; "Стил2")

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

Време е незадължителен интервал в секунди. Ако този параметър липсва, стилът няма да бъде променен след изминаването на определено време.

Стил2 е незадължителното име на стил за клетки, който да бъде приписан на клетката след изтичането на определен интервал. Ако този параметър липсва, се използва стилът „По подразбиране“.

Във функциите на LibreOffice Calc параметрите, отбелязани като „незадължителни“, могат да се пропускат само ако след тях не следват още параметри. Например, ако функцията приема четири параметъра, от които последните два са незадължителни, можете да изпуснете четвъртия параметър или третия и четвъртия, но не и само третия.

#### Пример

=STYLE("Невидим";60;"По подразбиране") форматира клетката със стила „Невидим“ за 60 секунди след преизчисляване или зареждане на документа, след което й се приписва стилът „По подразбиране“. И двата стила трябва да са дефинирани предварително.

Тъй като STYLE() връща числова стойност нула, тази стойност се добавя към низове. Това може да се избегне чрез T(), както в следния пример:

="Текст"&T(STYLE("МоятСтил"))

Вижте също CURRENT() за още един пример.

## VLOOKUP

Вертикално търсене с преглеждане на съседните клетки отдясно. Тази функция проверява дали в първата колона на масив се съдържа определена стойност. След това тя връща стойността от същия ред на колоната, посочена чрез Индекс. Ако параметърът Сортиран е пропуснат или има стойност TRUE или единица, се приема, че данните са сортирани в нарастващ ред. В този случай, ако не е намерен КритерийЗаТърсене, ще бъде върната последната стойност, по-малка от критерия. Ако Сортиран е FALSE или нула, се изисква точно съвпадение, иначе резултатът е Грешка: няма налична стойност. Така при нулева стойност не е необходимо данните да се сортират възходящо.

Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки знак, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в LibreOffice - PreferencesИнструменти - Настройки - PRODUCTNAME Calc - Изчисляване.

Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".

#### Синтаксис

=VLOOKUP(КритерийЗаТърсене; Масив; Индекс; ТърсенеВСортираниДиапазони)

КритерийЗаТърсене е стойността, търсена в първата колона на масива.

Масив е обръщението, което трябва да съдържа поне толкова колони, колкото е числото, подадено в аргумента „Индекс“.

Индекс е номерът на колоната в масива, съдържаща стойността, която да бъде върната. Първата колона е с номер 1.

ТърсенеВСортираниДиапазони е незадължителен параметър, който определя дали първата колона в масива съдържа граници на диапазони вместо обикновени стойности. В този режим търсенето връща стойността от реда, в който стойността на първата колона е по-малка или равна на „КритерийЗаТърсене“. Например, тя може да съдържа датите на промяна на някаква данъчна ставка, така че стойностите представят началните дати на периодите, в които е била в сила определена ставка. Тогава търсенето на дата, която отсъства в първата колона на масива, но се пада между две съществуващи гранични дати, ще върне по-малката от тях, което позволява да се намерят данните, които са в сила за търсената дата. Въведете логическата стойност FALSE или нула, ако първата колона не представлява списък от граници на диапазони. Когато този параметър е TRUE или е пропуснат, първата колона в масива трябва да е сортирана във възходящ ред. Сортираните колони се претърсват много по-бързо и функцията винаги връща стойност, дори ако няма точно съвпадение с търсената стойност, стига тя да е между най-ниската и най-високата стойност от сортирания списък. В несортирани списъци съвпадението с търсената стойност трябва да бъде точно. Иначе функцията ще върне съобщението: Грешка: няма налична стойност.

Обработка на празни клетки

#### Пример

Необходимо е при въвеждане на номера на ястие в клетката A1 името на ястието да се показва незабавно като текст в съседната клетка (B1). Съответствието между номера и имена е зададено чрез масива D1:E100. D1 съдържа100, E1 съдържа името Зеленчукова супа и т.н. – общо 100 реда от меню. Числата в колоната D са сортирани във възходящ ред, така че незадължителният параметър Сортирано не е необходим.

Въведете следващата формула в B1:

=VLOOKUP(A1;D1:E100;2)

След като въведете число в A1, в B1 ще се покаже съответният текст от втората колона на обръщението D1:E100. Въвеждането на несъществуващ номер ще предизвика изписване на следващия наличен номер. За да предотвратите това, въведете FALSE като последен параметър във формулата – така несъществуващите номера ще предизвикват съобщение за грешка.

Теми, свързани с показаната

Функции по категория