Съдържание

# Адреси и обръщения, абсолютни и относителни

Describes the differences between absolute and relative reference in Calc cell address.

## Обръщения към клетки

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

## Диапазони от клетки

Можете да посочите съвкупност от клетки, като се обърнете към тях като към диапазони. Диапазонът може да представлява блок от клетки, цял набор от колони или цял набор от редове. Диапазонът A1:B2 обхваща първите четири клетки в горния ляв ъгъл на листа. Диапазонът A:E съдържа всички клетки на колоните A, B, C, D и E. Диапазонът 2:5 съдържа всички клетки на колоните 2, 3, 4 и 5.

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

Например 'file:///C:/Users/user/Documents/Price list.ods'#$'Information SKU'.H51'file:///home/user/Documents/Price list.ods'#$'Information SKU'.H51.

URI с пътя и името на документа трябва винаги да е ограден с единични кавички. Ако името съдържа единични кавички ('), те трябва да са екранирани чрез две единични кавички (''). Само име на лист може да не бъде в кавички, ако не съдържа интервал или знак, който може да се тълкува като операция, и не е изцяло числово (например '123' трябва да е в кавички).

### Операции с обръщения

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

Операцията „диапазон“ има най-висок приоритет, след нея е сечението и накрая – обединението.

Операция | Име | Пример
--- | --- | ---
: | Област | A1:C108, A:D или 3:13
! | Сечение | SUM(A1:B6!B5:C12) Изчислява сумата на всички клетки в сечението. В този пример резултатът е сумата на клетките B5 и B6.

~

Конкатенация (обединение)

Приема две обръщения и връща списък от обръщения, който представлява конкатенация от лявото обръщение, последвано от дясното. Дублираните елементи се цитират два пъти.

=COUNT(A1:B2~B2:C3) преброява стойностите в A1:B2 и B2:C3. Забележете, че клетката B2 се преброява два пъти.

=INDEX(A1:B2~C1:D2;2;1;2) избира клетката C2, т.е. първата клетка на втория ред, първата колона от втория диапазон (C1:D2) в списъка с диапазони.

В израз от тип масив не са разрешени списъци от обръщения.

## Относително адресиране

Клетката в колона A, ред 1 се адресира като A1. Можете да адресирате област от съседни клетки като въведете координатите на горната лява клетка от областта, последвани от двоеточие и от координатите на долната дясна клетка на областта. Например квадратът, образуван от първите четири клетки в горния ляв ъгъл, е с адрес A1:B2.

При адресиране на област по този начин създавате относително обръщение към A1:B2. Под „относително“ се има предвид, че обръщението към тази област ще се наглася автоматично при копиране на формулите.

## Абсолютно адресиране

Абсолютното адресиране е противоположно на относителното. В абсолютните обръщения пред всяка буква и число се поставя знакът за долар, например, $A$1:$B$2.

LibreOffice може да преобразува обръщението, върху което се намира курсорът във входния ред, от относително към абсолютно и обратно чрез натискане на F4. Ако започнете с относителен адрес от рода на A1, при първото натискане на клавишната комбинация и редът, и колоната ще бъдат преобразувани в абсолютни обръщения ($A$1). Втория път ще бъде преобразуван само редът (A$1), а третия път – само колоната ($A1). Ако натиснете клавишната комбинация още веднъж, и редът, и колоната се превключват обратно към относително адресиране (A1)

LibreOffice Calc показва обръщенията в избраната формула. Например, ако щракнете върху формулата =SUM(A1:C5;D15:D24) в дадена клетка, двете посочени области от листа ще бъдат откроени с цветни рамки. Например компонентът „A1:C5“ ще бъде в синьо и съответният диапазон от клетки ще бъде очертан със същия нюанс на синьото. Следващият компонент от формулата, „D15:D24“, ще бъде маркиран в червено по същия начин.

## Кога да използвате относителни и кога – абсолютни обръщения

По какво се различават относителните обръщения? Да предположим, че искате да изчислите в клетката E1 сумата на клетките в областта A1:B2. Формулата, която трябва да въведете в E1, е следната: =SUM(A1:B2). Ако по-късно решите да вмъкнете нова колона пред колоната A, елементите, които сумирате, ще се окажат в B1:C2, а формулата ще бъде в F1 вместо в E1. Следователно след като вмъкнете новата колона, ще трябва да проверите и коригирате всички формули в листа и вероятно – в останалите листове.

За щастие LibreOffice прави това вместо вас. След като вмъкнете нова колона A, формулата =SUM(A1:B2) ще бъде автоматично обновена на =SUM(B1:C2). Номерата на редове също се приспособяват автоматично, когато бъде вмъкнат нов ред 1. Абсолютните и относителните обръщения в LibreOffice Calc винаги се пренасочват, когато цитираната област бъде преместена. Внимавайте обаче когато копирате формула, тъй като в този случай се пренасочват само относителните, но не и абсолютните обръщения.

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

Освен при вмъкване на нови редове и колони, обръщенията могат да се променят и когато съществуваща формула, която цитира определени клетки, бъде копирана в друга област на листа. Да кажем, че сте въвели формулата =SUM(A1:A9) в реда 10. Ако искате да изчислите сбора на съседната колона вдясно, просто копирайте тази формула в клетката отдясно. Копието на формулата в колоната B ще бъде автоматично променено на =SUM(B1:B9).

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

Наименуване на клетки

Разпознаване на имена като адресиране

R1C1 Reference Syntax for Calc Formulas

Моля, подкрепете ни!