Aide LibreOffice 25.2
LibreOffice Calc vous permet de référencer des données dans des tables de base de données en utilisant une notation spéciale, une « référence de table de base de données », pour les références de cellules à l'intérieur de la table. Cette notation spéciale vise à améliorer la lisibilité des formules qui référencent des cellules à l'intérieur d'une table de base de données.
Les « tables » de feuille de calcul sont définies par des plages de base de données (). Outre le nom de la base de données, les éléments suivants sont obligatoires pour utiliser les références de table de base de données :
Les tables doivent être orientées verticalement.
Les noms des étiquettes de colonnes doivent suivre les règles de plage nommée.
Les tables doivent avoir des étiquettes de colonnes, si l'interopérabilité avec Microsoft Excel est requise.
La table ci-dessous contient des valeurs utilisées dans des exemples plus loin dans ce document.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Nom | Région | Ventes | Ancienneté | 
| 2 | Smith | Ouest | 21 | 5 | 
| 3 | Jones | Est | 23 | 11 | 
| 4 | Johnson | Est | 9 | 7 | 
| 5 | Taylor | Ouest | 34 | 11 | 
| 6 | Brown | Est | 23 | 15 | 
| 7 | Walker | Est | 12 | 4 | 
| 8 | Edwards | East | 15 | 12 | 
| 9 | Thomas | Ouest | 17 | 10 | 
| 10 | Wilson | Ouest | 31 | 3 | 
| 11 | Totaux | 2 | 185 | 8.67 | 
La plage de cellules A1:D11 a été définie comme la plage de base de données « mesDonnées ». Les options et ont été cochées lors de la définition de la plage de base de données.
Une référence de table de base de données a un nom de la forme database_range[…]. La partie entre crochets peut être un mot-clé de référence réservé, un nom de champ entre crochets ou une combinaison des deux.
Dans les cas où un seul mot-clé ou un seul nom de champ est utilisé, utilisez des crochets simples au lieu de crochets doubles.
mesDonnées[#En-tête] au lieu de mesDonnées[[#En-tête]] ou mesDonnées[Région] au lieu de mesDonnées[[Région]].
| Mot-clé | Utilisation | Exemple | 
|---|---|---|
| [#Headers] | Le mot-clé [#Headers] fait référence à la ligne de noms de champs (étiquettes de colonnes). Il s'agit de la première ligne de la plage de la base de données. Si la plage de base de données n'a aucune ligne d'étiquettes définie (ligne contient des colonnes), une erreur #REF! est générée. | L'expression mesDonnées[#Headers] fait référence aux cellules A1:D1. | 
| [#Data] | The keyword [#Data] references the data records of the database range, excluding the column label row and the totals row. La forme courte mesDonnées[] peut également être utilisée. | L'expression mesDonnées[#Data] fait référence au rectangle de cellule A2:D10. | 
| [#Totals] | The keyword [#Totals] references the row of totals. It is the last row of the database range. Si la plage de base de données n'a aucune ligne de totaux définie (), une erreur #REF! est générée. | L'expression mesDonnées[#Totals] fait référence aux cellules A11:D11. | 
| [#All] | Le mot clé [#All] fait référence à l'ensemble de la plage de bases de données, y compris les étiquettes de colonnes et les totaux. | L'expression mesDonnées[#All] fait référence aux cellules A1:D11. | 
| [#This Row] | Ce mot clé décrit une intersection implicite. | Si l'expression mesDonnées[#This Row] est utilisée dans une formule de la cellule F2, elle fait référence à A2:D2. Si la même expression est utilisée dans une formule de la cellule F5, elle fait référence à A5:D5. | 
Pour référencer la matrice de toutes les valeurs des enregistrements appartenant au même champ, utilisez le format [nom du champ]. La plage de cellules référencée n'inclut pas l'étiquette et les totaux.
L'expression mesDonnées[[Region]] ou sa forme simplifiée mesDonnées[Region] fait référence aux cellules B2:B10. Si la plage de base de données ne comporte aucune ligne d'étiquette, des étiquettes génériques telles que Column1, Column2 peuvent être utilisées.
Dans Microsoft Excel, si la cellule de formule appartient à la table, le nom de la table peut être omis. Par exemple, la formule =SOMME(mesDonnées[Ventes]) dans la cellule C11 pourrait être écrite comme =SOMME([Ventes]). L'omission du nom de la table n'est pas encore possible dans Calc.
Pour référencer une combinaison d'étiquettes de colonnes et d'enregistrements de données, utilisez le format [#En-têtes];[#Données] ou [#En-têtes],[#Données], où le séparateur est le même que pour les paramètres de fonction défini dans .
Pour référencer une combinaison d'enregistrements de données et de lignes de totaux, utilisez [#Données];[#Totaux]. Par exemple, mesDonnées[[#Data];[#Totals]] fait référence aux cellules A2:D11.
Une combinaison comme [#En-têtes];[#Totaux] n'est pas possible car cela donnerait deux rectangles de cellules disjoints.
Pour référencer plusieurs colonnes adjacentes, utilisez l'opérateur de plage « : ». Par exemple, la formule mesDonnées[[Nom]:[Ventes]] s'applique aux cellules A2:C10.
L'utilisation de colonnes non adjacentes n'est pas possible car elle ferait référence à deux rectangles de cellules distincts.
La référence via le nom de champ et l'utilisation d'un mot-clé de référence peuvent être combinées. Indiquez d'abord le mot-clé, puis le séparateur de fonction et enfin le nom du champ entre parenthèses. Par exemple, mesDonnées[[#Totaux];[Ventes]] fait référence à la cellule C11.