Функции электронных таблиц

From LibreOffice Help
Jump to: navigation, search

Этот раздел содержит описание функций электронных таблиц, а также примеры.

Вставка - Функция - Тип Электронная таблица

GETPIVOTDATA

Функция GETPIVOTDATA возвращает значение результата из сводной таблицы. Значение адресуется с помощью имён поля и элемента, поэтому оно остаётся действительным даже при изменении структуры сводной таблицы.

Синтаксис

Можно использовать два разных синтаксиса:

GETPIVOTDATA(Целевое поле; Сводная таблица; [Поле 1; Элемент 1; ... ])

GETPIVOTDATA(сводная таблица; ограничения)

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

Первый cинтаксис

Целевое_поле: строка для выбора одного из полей данных сводной таблицы. Эта строка может содержать имя исходного столбца или имя поля данных, отображаемое в таблице (например, "Сумма – Сбыт").

Сводная_таблица является ссылкой на ячейку или диапазон ячеек, расположенный в сводной таблице или содержащий сводную таблицу. Если диапазон ячеек содержит несколько сводных таблиц, то используется таблица, созданная последней.

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

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

Исходные данные, которые содержат записи, скрытые настройками сводной таблицы, игнорируются. Порядок пар "поле/элемент" не имеет значения. Регистр имён полей и элементов не учитывается.

При отсутствии ограничения для поля страницы выбранное значение поля используется неявно. Если ограничение для поля страницы существует, оно должно совпадать с выбранным значением поля, в противном случае возвращается ошибка. Поля страницы - это поля в верхнем левом углу сводной таблицы заполненные с использованием области "Поля страницы" диалогового окна "Разметка сводной таблицы". Из каждого поля страницы можно выбрать элемент (значение), которое означает, что в расчёт включён только этот элемент.

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

Второй cинтаксис

Сводная_таблица: аналогично первому варианту синтаксиса.

Ограничения: список значений, разделённых пробелами. Элементы списка могут заключаться в кавычки (одиночные). Вся строка заключается в двойные кавычки (за исключением случая ссылки на строку из другой ячейки).

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

Все остальные записи указывают ограничение в форме Поле[Элемент] (с символами "[" и "]"), либо только Элемент, если имя элемента уникально среди всех полей, используемых в сводной таблице.

Имя функции можно добавить в форме Поле[Элемент;Функция], в результате чего сопоставление ограничится только значениями промежуточных итогов, для которых эта функция используется. Допустимые имена функций - Sum, Count, Average, Max, Min, Product, Count (только числа), StDev (выборка), StDevP (заполнение), Var (выборка) и VarP (заполнение) без учёта регистра.

Returns a number representing a specific Error type, or the error value #N/A, if there is no error.

VLOOKUP

Vertical search with reference to adjacent cells to the right. This function checks if a specific value is contained in the first column of an array. The function then returns the value in the same row of the column named by Index. If the Sorted parameter is omitted or set to TRUE or one, it is assumed that the data is sorted in ascending order. In this case, if the exact SearchCriterion is not found, the last value that is smaller than the criterion will be returned. If Sorted is set to FALSE or zero, an exact match must be found, otherwise the error Error: Value Not Available will be the result. Thus with a value of zero the data does not need to be sorted in ascending order.

Поиск поддерживает регулярные выражения. Например, можно ввести "all.*", чтобы найти первое вхождение "all", за которым следует любое количество символов. Чтобы выполнить поиск текста, который также является регулярным выражением, необходимо ввести символы \ перед каждым символом. Чтобы включить или отключить автоматическую оценку регулярных выражений, используйте команду Сервис - Параметры - LibreOffice Calc - Вычислить.

Синтаксис

=VLOOKUP(SearchCriterion; Array; Index; Sorted)

Условие_поиска: значение для поиска в первом столбце массива.

Массив: ссылка, которая должна включать, по крайней мере, два столбца.

Индекс: количество столбцов в массиве, который содержит возвращаемое значение. Первому столбцу соответствует номер 1.

Sorted is an optional parameter that indicates whether the first column in the array is sorted in ascending order. Enter the Boolean value FALSE or zero if the first column is not sorted in ascending order. Sorted columns can be searched much faster and the function always returns a value, even if the search value was not matched exactly, if it is between the lowest and highest value of the sorted list. In unsorted lists, the search value must be matched exactly. Otherwise the function will return this message: Error: Value Not Available.

Обработка пустых ячеек

Пример

You want to enter the number of a dish on the menu in cell A1, and the name of the dish is to appear as text in the neighboring cell (B1) immediately. The Number to Name assignment is contained in the D1:E100 array. D1 contains 100, E1 contains the name Vegetable Soup, and so forth, for 100 menu items. The numbers in column D are sorted in ascending order; thus, the optional Sorted parameter is not necessary.

Введите следующую формулу в ячейку B1:

=VLOOKUP(A1;D1:E100;2)

При вводе номера в ячейку A1 в ячейке B1 будет отображен соответствующий текст, который содержится во втором столбце массива D1:E100. При вводе несуществующего номера в ячейке отображается текст для следующего номера. Для исключения этого задайте последнему параметру формулы значение FALSE, чтобы при вводе несуществующего номера отображалось сообщение об ошибке.

COLUMNS

Возвращает количество столбцов для заданной ссылки.

Синтаксис

COLUMNS(Массив)

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

Пример

=COLUMNS(B5) возвращает значение 1, поскольку ячейка содержит только один столбец.

=COLUMNS(A1:C5) возвращает значение 3. Диапазон содержит три столбца.

=COLUMNS(Rabbit) возвращает значение 2, если Rabbit – указанный диапазон (C1:D3).

COLUMN

Возвращает номер столбца для ссылки на ячейку. Если ссылка указывает на ячейку, возвращается номер столбца для этой ячейки; если ссылка указывает на область ячеек, возвращаются соответствующие номера столбцов в виде массива из одной строки при условии ввода формулы в качестве формулы массива. Если функция COLUMN со ссылкой на область не используется в качестве функции массива, возвращается только номер столбца для первой ячейки области.

Синтаксис

COLUMN(Ссылка)

Ссылка: ссылка на ячейку или область ячеек, для которой требуется определить номер первого столбца.

Если ссылка не указана, возвращается номер столбца для ячейки с формулой. 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(Rabbit)} возвращает массив с одной строкой (3, 4), если " Rabbit" – указанный диапазон (C1:D3).

INDIRECT

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

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

В функции ADDRESS этот параметр вставляется в качестве четвертого параметра, смещая при этом необязательный параметр имени листа на пятое место.

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

В обеих функциях, если аргумент вставлен со значением 0, используется нотация R1C1. Если аргумент не используется или его значение не равно нулю, используется нотация A1.

Если используется нотация R1C1, функция ADDRESS возвращает строки адреса, используя в качестве разделителя имён листов восклицательный знак '!', а функция INDIRECT ожидает, что в качестве разделителя имён листов используется восклицательный знак. В нотации А1 обе функции по-прежнему используют в качестве разделителя имён листов точку '.'.

При открытии документов в формате ODF 1.0/1.1 функции ADDRESS, отображающие имя листа в качестве четвертого параметра, сместят имя листа на место пятого параметра. Будет вставлен новый четвертый параметр со значением 1.

Если при сохранении документа в формате ODF 1.0/1.1 в функциях ADDRESS имеется четвертый параметр, этот параметр будет удален.

Note.png Не сохраняйте электронную таблицу в старом формате ODF 1.0/1.1, если четвертый параметр функции ADDRESS использовался со значением 0.
Note.png Функция INDIRECT сохраняется без преобразования в формат ODF 1.0/1.1. Если имеется второй параметр, более старая версия Calc возвратит для этой функции ошибку.

Синтаксис

INDIRECT(Ссылка; A1)

Ссылка: ссылка на ячейку или область (в текстовой форме), содержимое которой подлежит возврату.

A1 (необязательный параметр): если для этого параметра установлено значение 0, то используется нотация R1C1. Если этот параметр отсутствует или имеет значение, отличное от 0, то используется нотация A1.

Note.png При открытии электронной таблицы Excel, в которой используются косвенные адреса, рассчитанные с помощью строковых функций, автоматическое преобразование адресов листа не выполняется. Например, адрес для Excel в функции INDIRECT("filename!sheetname"&B1) не преобразуется в адрес для Calc в функции INDIRECT("filename.sheetname"&B1).

Пример

=INDIRECT(A1) возвращает значение 100, если ячейка A1 содержит ссылку на ячейку C108, а ячейка C108 содержит значение 100.

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

INDEX

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

Синтаксис

INDEX(Ссылка; Строка; Столбец; Диапазон)

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

Строка (необязательный параметр): индекс строки в диапазоне, для которого возвращается значение. В случае нуля (строка не указана) возвращаются все вызванные строки.

Столбец (необязательный параметр): индекс столбца в диапазоне, для которого возвращается значение. В случае нуля (столбец не указан) возвращаются все столбцы в ссылке.

Диапазон (необязательный параметр): индекс поддиапазона в случае ссылки на составной диапазон.

Пример

=INDEX(Цены;4;1) возвращает значение для строки 4 и столбца 1 из диапазона в базе данных, определенного по пути Данные – Определить как Цены.

=INDEX(SumX;4;1) возвращает значение из диапазона SumX для строки 4 и столбца 1, как определено по пути Вставка – Имена – Определить.

=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((составной);0;0;2) возвращает ссылку на второй диапазон составного диапазона.

ERRORTYPE

Возвращает номер типа ошибки в другой ячейке. С помощью этого номера можно воспроизвести текст сообщения об ошибке.

If an error occurs, the function returns a logical or numerical value.

Note.png В строке состояния при щелчке ячейки с ошибкой отображается стандартный код ошибки LibreOffice.

Синтаксис

ERRORTYPE(Ссылка)

Ссылка: адрес ячейки с ошибкой.

Пример

Если в ячейке A1 отображается ошибка Err:518, функция =ERRORTYPE(A1) возвращает номер 518.

DDE

Возвращает результат для ссылки DDE. Если содержимое диапазона или раздела изменилось, возвращаемое значение также меняется. Чтобы просмотреть обновлённые ссылки, следует перезагрузить электронную таблицу или выбрать команду Правка - Ссылки. Межплатформенные ссылки, например, ссылки в установке LibreOffice, запущенной в ОС Windows на документ, созданный в ОС Linux, запрещены.

Синтаксис

DDE("Сервер"; "Файл"; "Диапазон"; Режим)

Server is the name of a server application. LibreOfficeapplications have the server name "soffice".

Файл: полное имя файла, включая путь.

Диапазон: область, содержащая данные для оценки.

Режим: необязательный параметр для управления методами преобразования данных в числа на сервере DDE.

Режим Результат
0 или отсутствует Формат числа из стиля ячейки "По умолчанию"
1 Данные всегда преобразуются в стандартный формат для английского языка (США)
2 Данные извлекаются в виде текста; преобразование в числа не выполняется

Пример

=DDE("soffice";"c:\office\document\data1.ods";"sheet1.A1") reads the contents of cell A1 in sheet1 of the LibreOffice Calc spreadsheet data1.ods.

=DDE("soffice";"c:\office\document\motto.odt";"Today's motto") returns a motto in the cell containing this formula. First, you must enter a line in the motto.odt document containing the motto text and define it as the first line of a section named Today's Motto (in LibreOffice Writer under Insert - Section). If the motto is modified (and saved) in the LibreOffice Writer document, the motto is updated in all LibreOffice Calc cells in which this DDE link is defined.

HYPERLINK

При щелчке ячейки с функцией HYPERLINK открывается соответствующая гиперссылка.

В случае ввода необязательного параметра Текст_ячейки формула выполняет поиск URL–адреса, а затем отображает его в виде текста или числа.

Tip.png Чтобы открыть ячейку с гиперссылкой с помощью клавиатуры, выделите ячейку, нажмите клавишу 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" к адресу веб-страницы в ячейке с гиперссылкой и возвращает этот текст в качестве результата формулы.

=HYPERLINK("http://www.";"Щёлкните") & "example.org" выводит на экран текст "Щёлкните example.org" в ячейке и при щелчке переходит по гиперссылке http://www.example.org.

=HYPERLINK("#Лист1.A1"; "Перейти наверх") выводит на экран текст "Перейти наверх" и осуществляет переход к ячейке A1 листа1 этого документа.

=HYPERLINK("file:///C:/writer.odt#Specification"; "Перейти на закладку Writer") выводит на экран текст "Перейти на закладку Writer", загружает указанный текстовый документ и переходит на закладку "Спецификация".

AREAS

Возвращает количество отдельных диапазонов, входящих в составной диапазон. Диапазон может состоять из смежных ячеек или одной ячейки.

В функцию передаётся только один аргумент. При определении составных диапазонов их необходимо заключать в дополнительные скобки. Составные диапазоны указываются через точку с запятой (;), но этот знак автоматически преобразуется в оператор "тильда" (~). Тильда используется для объединения диапазонов.

Синтаксис

AREAS(Ссылка)

Ссылка. Ссылка на ячейку или диапазон ячеек.

Пример

=AREAS((A1:B3;F2;G1)) возвращает значение 3, поскольку это ссылка на три ячейки или области. После ввода выполняется преобразование в =AREAS((A1:B3~F2~G1)).

=AREAS(Все) возвращает значение 1, если в окне Данные – определить диапазон была определена область с именем "Все".

ROWS

Возвращает количество строк в массиве или ссылке.

Синтаксис

ROWS(Массив)

Массив: ссылка или имя области, для которой требуется определить общее количество строк.

Пример

=ROWS(B5) возвращает значение 1, поскольку ячейка включает только одну строку.

=ROWS(A10:B12) возвращает значение 3.

=ROWS(Rabbit) возвращает значение 3, если " Rabbit" – указанный диапазон (C1:D3).

ROW

Возвращает номер строки для ссылки на ячейку. Если ссылка указывает на ячейку, возвращается номер строки для этой ячейки. Если ссылка указывает на диапазон ячеек, функция возвращает соответствующие номера строк в массиве с одним столбцом, если формула используется как формула массива. Если функция ROW со ссылкой на диапазон не является формулой массива, возвращается только номер строки для первой ячейки диапазона.

Синтаксис

ROW(Ссылка)

Ссылка: ячейка, область или имя области.

Если ссылка не указана, возвращается номер строки для ячейки, которая содержит формулу. 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(Rabbit)} возвращает массив с одним столбцом (1, 2, 3), если "Rabbit" – указанный диапазон (C1:D3).

HLOOKUP

Служит для поиска значения и ссылки на ячейки в выделенной области. Эта функция проверяет первую строку массива на наличие определенного значения. Функция возвращает значение в тот же столбец в строку массива в соответствии с её номером в индексе.

Поиск поддерживает регулярные выражения. Например, можно ввести "all.*", чтобы найти первое вхождение "all", за которым следует любое количество символов. Чтобы выполнить поиск текста, который также является регулярным выражением, необходимо ввести символы \ перед каждым символом. Чтобы включить или отключить автоматическую оценку регулярных выражений, используйте команду Сервис - Параметры - LibreOffice Calc - Вычислить.

Синтаксис

HLOOKUP(SearchCriterion; Array; Index; Sorted)

See also: VLOOKUP (columns and rows are exchanged)

Обработка пустых ячеек

CHOOSE

Эта функция использует индекс для возврата значения из списка, содержащего до 30 значений.

Синтаксис

CHOOSE(Индекс; Значение1; ...; Значение30)

Индекс: ссылка или число в диапазоне от 1 до 30, указывающее на значение, которое требуется извлечь из списка.

Значение1...значение30: список отдельных значений или ссылок на ячейки.

Пример

=CHOOSE(A1;B1;B2;B3; "Сегодня"; "Вчера"; "Завтра"), например, возвращает содержимое ячейки B2 для A1 = 2; для A1 = 4 функция возвращает текст "Сегодня".

STYLE

Определяет стиль для ячейки, содержащей формулу. После заданного промежутка времени стиль можно поменять. Эта функция всегда возвращает значение 0; таким образом, её можно добавить к другой функции без изменения значения. Используя эту функцию совместно с функцией CURRENT, к ячейке можно применить цвет вне зависимости от её значения. Например: =...+STYLE(IF(CURRENT()>3;"красный";"зелёный")) позволяет применить к ячейке стиль "красный", если значение ячейки больше 3; в противном случае применяется стиль "зелёный". Для обеих ячеек необходимо предварительно определить формат.

Синтаксис

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

Стиль: имя стиля, назначенного ячейке. Имена стилей заключаются в кавычки.

Время (необязательный параметр): промежуток времени в секундах. Если этот параметр не задан, то по истечении определенного промежутка времени стиль остаётся без изменений.

Стиль2 (необязательный параметр): имя стиля, применяемого к ячейке по истечении определенного промежутка времени. Если этот параметр не определен, то используется стиль "По умолчанию".

В функциях LibreOffice Calc необязательные параметры можно оставлять пустыми только в том случае, если за ними не следуют другие параметры. Например, если у функции четыре параметра и два последних параметра являются необязательными, то можно оставить пустыми параметры 3 и 4 или параметр 4. Оставить пустым параметр 3 невозможно.

Пример

=STYLE("невидимый"; 60; "по умолчанию") применяет к ячейке прозрачный формат на 60 секунд после повторного расчета или загрузки документа, после чего применяет формат "По умолчанию". Для обеих ячеек необходимо предварительно определить формат.

Поскольку функция STYLE() имеет числовое возвращаемое значение нуля, это возвращаемое значение добавляется к строке. Этого можно избежать с помощью T(), как показано в следующем примере:

="Текст"&T(STYLE("myStyle"))

Еще один пример см. в описании CURRENT().

LOOKUP

Returns the contents of a cell either from a one-row or one-column range. Optionally, the assigned value (of the same index) is returned in a different column and row. As opposed to VLOOKUP and HLOOKUP, search and result vector may be at different positions; they do not have to be adjacent. Additionally, the search vector for the LOOKUP must be sorted ascending, otherwise the search will not return any usable results.

Note.png Если с помощью функции LOOKUP не удаётся установить критерий поиска, то он соответствует самому большому значению в векторе просмотра, который меньше, чем критерий поиска, или равен ему.

Поиск поддерживает регулярные выражения. Например, можно ввести "all.*", чтобы найти первое вхождение "all", за которым следует любое количество символов. Чтобы выполнить поиск текста, который также является регулярным выражением, необходимо ввести символы \ перед каждым символом. Чтобы включить или отключить автоматическую оценку регулярных выражений, используйте команду Сервис - Параметры - LibreOffice Calc - Вычислить.

Синтаксис

LOOKUP(Условие поиска; Вектор поиска; Вектор результата)

Условие_поиска: значение для поиска, которое вводится вручную или посредством создания ссылки на него.

Вектор_поиска: область для выполнения поиска, состоящая из отдельной строки или столбца.

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

Обработка пустых ячеек

Пример

=LOOKUP(A1;D1:D100;F1:F100) позволяет выполнить поиск соответствующей ячейки в диапазоне D1:D100 для числа, указанного в ячейке A1. Для найденного экземпляра определяется индекс, например, 12-я ячейка в этом диапазоне. Затем содержимое 12-й ячейки возвращается в виде значения функции (в векторе результата).

OFFSET

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

Синтаксис

OFFSET(Ссылка; Строки; Столбцы; Высота; Ширина)

Ссылка: ссылка, начиная с которой функция выполняет поиск новой ссылки.

Строки: количество строк, на которое ссылка была смещена вверх (отрицательное значение) или вниз.

Строки: количество строк, на которое ссылка была смещена вверх (отрицательное значение) или вниз.

Высота (необязательный параметр) высота области, которая начинается с новой позиции ссылки.

Ширина (необязательный параметр): ширина области, которая начинается с новой позиции ссылки.

Аргументы Строки и Столбцы не должны привести к нулю или отрицательной строке или столбцу начала.

Аргументы Высота и Ширина не должны привести к нулю или отрицательному количеству строк или столбцов.

В функциях LibreOffice Calc необязательные параметры можно оставлять пустыми только в том случае, если за ними не следуют другие параметры. Например, если у функции четыре параметра и два последних параметра являются необязательными, то можно оставить пустыми параметры 3 и 4 или параметр 4. Оставить пустым параметр 3 невозможно.

Пример

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

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

= OFFSET(B2:C3;-1;-1) возвращает ссылку на диапазон B2:C3, поднятый на 1 строку и сдвинутый влево на 1 столбец (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 столбца (B2:E4).

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

Note.png If the width or height is included, the OFFSET function returns a range and thus must be entered as an array formula. If both the width and height are missing, a cell reference is returned.

MATCH

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

Синтаксис

MATCH(Условие поиска; Массив; Тип)

Условие_поиска: значение для поиска в массиве с одной строкой или столбцом.

Массив: ссылка для поиска. Это может быть одна строка или столбец, либо часть одной строки или столбца.

Тип: параметр, который может принимать значения 1, 0 или -1. Если этот параметр имеет значение 1, либо значение не указано, предполагается, что значения в первом столбце массива отсортированы по возрастанию. Если этому параметру присвоено значение -1, это означает, что значения столбца отсортированы по убыванию. Эта функция соответствует аналогичной функции в Microsoft Excel.

If Type = 0, only exact matches are found. If the search criterion is found more than once, the function returns the index of the first matching value. Only if Type = 0 can you search for regular expressions (if enabled in calculation options) or wildcards (if enabled in calculation options).

Если параметр "Тип" имеет значение 1 или третий параметр не задан, возвращается индекс последнего значения, которое меньше либо равно условию поиска. Это условие действует, даже если значения в массиве не отсортированы. Если параметр "Тип" равен -1, возвращается первое значение, которое больше либо равно условию поиска.

Поиск поддерживает регулярные выражения. Например, можно ввести "all.*", чтобы найти первое вхождение "all", за которым следует любое количество символов. Чтобы выполнить поиск текста, который также является регулярным выражением, необходимо ввести символы \ перед каждым символом. Чтобы включить или отключить автоматическую оценку регулярных выражений, используйте команду Сервис - Параметры - LibreOffice Calc - Вычислить.

Пример

=MATCH(200; D1:D100) выполняет поиск значения 200 в области D1:D100, отсортированной по столбцу D. По достижении этого значения возвращается номер соответствующей строки. Если найденное значение больше искомого, возвращается номер предыдущей строки.

SHEETS

Служит для определения количества листов для ссылки. Если параметры не заданы, возвращается количество листов в текущем документе.

Синтаксис

SHEETS(Ссылка)

Ссылка: ссылка на лист или область. Этот параметр является необязательным.

Пример

=SHEETS(Sheet1.A1:Sheet3.G12) возвращает значение 3, если листы лист1, листt2 и лист3 стоят в указанной последовательности.

SHEET

Возвращает номер листа для ссылки или строку с именем листа. Если параметры не заданы, возвращается номер листа с формулой.

Синтаксис

SHEET(Ссылка)

Ссылка (необязательный параметр): ссылка на ячейку или область, либо строка с именем листа.

Пример

= SHEET(Лист2.A1) возвращает значение 2, если лист2 является вторым листом электронной таблицы.

ADDRESS

Возвращает адрес (ссылку) ячейки в виде текста в соответствии с указанными номерами строки и столбца. Можно выбрать отображение адреса как абсолютного (например, $A$1), относительного (A1) или смешанного типа (A$1 или $A1). Можно также указать имя листа.

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

В функции ADDRESS этот параметр вставляется в качестве четвертого параметра, смещая при этом необязательный параметр имени листа на пятое место.

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

В обеих функциях, если аргумент вставлен со значением 0, используется нотация R1C1. Если аргумент не используется или его значение не равно нулю, используется нотация A1.

Если используется нотация R1C1, функция ADDRESS возвращает строки адреса, используя в качестве разделителя имён листов восклицательный знак '!', а функция INDIRECT ожидает, что в качестве разделителя имён листов используется восклицательный знак. В нотации А1 обе функции по-прежнему используют в качестве разделителя имён листов точку '.'.

При открытии документов в формате ODF 1.0/1.1 функции ADDRESS, отображающие имя листа в качестве четвертого параметра, сместят имя листа на место пятого параметра. Будет вставлен новый четвертый параметр со значением 1.

Если при сохранении документа в формате ODF 1.0/1.1 в функциях ADDRESS имеется четвертый параметр, этот параметр будет удален.

Note.png Не сохраняйте электронную таблицу в старом формате ODF 1.0/1.1, если четвертый параметр функции ADDRESS использовался со значением 0.
Note.png Функция 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;;"Sheet2") возвращает следующий результат: Лист2.A$1

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


Related Topics

Functions by Category