Ссылка на таблицу базы данных

LibreOffice Calc позволяет ссылаться на данные в таблицах базы данных с помощью специальной записи, “database table reference”, для ссылки на ячейку внутри таблицы. Эта специализированная нотация нацелена на улучшение читаемости формул со ссылками на ячейки в таблице базы данных.

Таблицы базы данных

«Таблицы» в электронной таблице определяются по диапазонам базы данных (Данные - Задать диапазон). В дополнение к имени базы данных, для использования ссылок на таблицы базы данных необходимо следующее:

Пример

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

A

B

C

D

1

Имя

Регион

Продажи

Стаж

2

Smith

Запад

21

5

3

Jones

Восток

23

11

4

Johnson

Восток

9

7

5

Taylor

Запад

34

11

6

Brown

Восток

23

15

7

Walker

Восток

12

4

8

Edwards

East

15

12

9

Thomas

Запад

17

10

10

Wilson

Запад

31

3

11

Итого

2

185

8.67


Диапазон ячеекA1:D11 был определён в качестве диапазона базы данных «myData». Параметры Содержит подписи столбцов и Содержит строку итогов были включены при определении диапазона базы данных.

Создание ссылок на данные в таблицах

Ссылка на таблицу базы данных имеет форму имени диапазона базы данных database_range[…]. Часть внутри квадратных скобок может быть зарезервированным ключевым словом для ссылки, именем поля в квадратных скобках, либо комбинацией того и другого.

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

Пример

myData[#Headers] вместо myData[[#Headers]] или myData[Регион] вместо myData[[Регион]].

Зарезервированные ключевые слова для ссылки

Ключевое слово

Применение

Пример

[#Headers]

Ключевое слово [#Headers] ссылается на строку имён полей (заголовков столбцов). Это первая строка диапазона базы данных.

Если в диапазоне базы данных не определена строка заголовка (содержит строку столбцов), генерируется ошибка #ССЫЛ!

Выражение myData[#Headers] ссылается на ячейки A1:D1.

[#Data]

The keyword [#Data] references the data records of the database range, excluding the column label row and the totals row.

Также можно использовать короткую форму myData[].

Выражение myData[#Data] ссылается на прямоугольную область ячеек A2:D10.

[#Totals]

The keyword [#Totals] references the row of totals. It is the last row of the database range.

Если в диапазоне базы данных не определена строка итогов (Содержит строку итогов), генерируется ошибка #ССЫЛ!

Выражение myData[#Totals] ссылается на ячейки A11:D11.

[#All]

Ключевое слово [#All] ссылается на весь диапазон базы данных, включая заголовки столбцов и итоги.

Выражение myData[#All] ссылается на ячейки A1:D11.

[#This Row]

Это ключевое слово описывает неявное пересечение.

Если выражение myData[#This Row] используется в формуле в ячейке F2, то оно ссылается на A2:D2. Если то же самое выражение используется в формуле в ячейке F5, то оно ссылается на A5:D5.


Имя поля в квадратных скобках

Для создания ссылки на массив всех значений в записи, принадлежащей одному полю, используйте форму [имя поля]. Диапазон ячеек, на который указывает ссылка не включает заголовки и итоги.

Пример

Выражение myData[[Диапазон]] или его упрощённая форма myData[Диапазон] ссылается на ячейки B2:B10. Если в диапазоне базы данных отсутствует строка заголовков, то можно использовать общие заголовки Column1, Column2.

note

В Microsoft Excel, если формула ячейки принадлежит таблице, то имя таблицы можно опустить. Например, формула =SUM(myData[Продажи]) в ячейке C11 может быть представлена в виде =SUM([Продажи]). Однако в Calc пропускать имя таблицы пока нельзя.


Комбинации

Столбцы и записи данных

Для создания ссылки на комбинацию из заголовков столбцов и записей данных можно использовать формат [#Headers];[#Data] или [#Headers],[#Data], где применяется такой же разделитель, как и для параметров функции, определяемый в Сервис - Параметры - Calc - Формула - Разделители.

Записи данных и строка итогов

Для создания ссылки на комбинацию из записей данных и строки итогов используйте формат [#Data];[#Totals]. Например, myData[[#Data];[#Totals]] ссылается на ячейки A2:D11.

Комбинацию в виде [#Headers];[#Totals] применять нельзя, так как это приведёт к результату в виде двух разрозненных прямоугольных областей ячеек.

Соседние столбцы

Для создания ссылки на несколько соседних столбцов используйте оператор диапазона “:”. Например, формула myData[[Имя]:[Продажи]] ссылается на ячейки A2:C10.

Несмежные столбцы

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

Имя поля и ключевое слово

При создании ссылки имя поля можно комбинировать с ключевыми словами. Сначала задаются ключевые слова, затем разделитель функции, и в последнюю очередь имя поля в скобках. Например, myData[[#Totals];[Продажи]] ссылается на ячейку C11.

Пожалуйста, поддержите нас!