Databasefunktioner

Dette afsnit omhandler funktioner med data arrangeret som en række data i en datapost.

note

Kategorien Database må ikke forveksles med en database integreret i LibreOffice. Der er ingen forbindelse mellem en database i LibreOffice og kategorien Database i LibreOffice Calc.


Eksempeldata:

Følgende data benyttes i nogle eksempler på funktionsbeskrivelser:

Området A1:E10 lister børnene, som er inviteret til Joes fødselsdagsfest. De følgende informationer er indtastet for hvert element: kolonne A viser navnet, B klassetrin, så alder i år, afstand til skolen i meter og vægt i kilogram.

A

B

C

D

E

1

Navn

Klasse

Alder

Afstand til skole

Vægt

2

Andy

3

9

150

40

3

Betty

4

10

1000

42

4

Charles

3

10

300

51

5

Daniel

5

11

1200

48

6

Eva

2

8

650

33

7

Frank

2

7

300

42

8

Greta

1

7

200

36

9

Harry

3

9

1200

44

10

Irene

2

8

1000

42

11

12

13

Navn

Klasse

Alder

Afstand til skole

Vægt

14

>600

15

16

DTÆL

5


Formlen i celle B16 er =DTÆL(A1:E10; 0; A13:E14)

Databasefunktionsparametre:

Følgende elementer er parameterdefinitionerne for alle databasefunktioner:

Database er celleområdet, som definerer databasen.

Databasefelt specificerer kolonnen, som funktionen opererer på, efter at søgekriteriet fra den første parameter er anvendt, og datarækkerne er valgt. Det er ikke selv relateret til søgekriterierne selv. For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Søgekriterier er celleområdet, som indeholder søgekriteriet. Hvis du skriver flere kriterier i en række, forbindes de med AND. Hvis du skriver kriteriet i forskellige rækker forbindes de af OR. Tomme celler i søgekriteriet vil blive ignoreret.

Choose - LibreOffice Calc - Calculate to define how LibreOffice Calc acts when searching for identical entries.

Se også wiki-siden om Betinget Tælling og Opregning.

DHENT

DHENT returnerer indholdet for den refererede celle i en database, som passer til det angivne søgekriterium. I tilfælde af fejl returnerer funktionen enten #VÆRDI!, hvis der ikke blev fundet en række, eller Err502 hvis der blev fundet mere end en enkelt celle.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DHENT(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

I eksemplet ovenfor (rul opad for at se det) ønsker vi at fastslå, hvilken klasse barnet, hvis navn blev indtastet i celle A14, går i. Formlen indtastes i celle B16 og afviger lidt fra de tidligere eksempler, fordi kun en enkelt kolonne (et enkelt databasefelt) kan indtastes som parameteren Databasefelt. Indtast den følgende formel:

=DHENT(A1:E10;"Klasse";A13:E14)

Indtast navnet Frank i A14, og du ser resultatet 2. Frank er i anden klasse. Indtast "alder" i stedet for "klasse" og du vil få vist Franks alder.

Eller indtast kun værdien 11 i celle C14, og slet de andre elementer i denne række. Rediger formlen i B16 som følger:

=DHENT(A1:E10;"Navn";A13:E14)

I stedet for klasse, spørges der efter navnet. Svaret vises med det samme: Daniel er det eneste barn som er 11 år.

DMAKS

DMAKS returnerer det maksimale indhold af en celle (felt) i en database (alle dataposter) som passer til de specificerede søgekriterier.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DMAKS(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde ud af hvor meget det tungeste barn i hver klasse vejer i det forrige eksempel (rul venligst opad), indtast følgende formel i B16:

=DMAKS(A1:E10;"Vægt";A13:E14)

Under 'Klasse', indtast 1, 2, 3 og så videre, den ene efter den anden. Efter indtastning af klasse vil vægten af det tungeste barn i klassen blive vist.

DMIDDEL

DMIDDEL returnerer gennemsnittet af værdierne af alle celler (felter) i alle rækker (databaseposter), som opfylder det angivne søgekriterium.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DMIDDEL(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde den gennemsnitlige vægt af alle børn på samme alder i eksemplet ovenfor (rul venligst opad), indtast følgende formel i B16:

=DMIDDEL(A1:E10;"Vægt";A13:E14)

I række 14, under alder, indtast 7, 8, 9 og så videre, den ene efter den anden. Den gennemsnitlige vægt af alle børn på samme alder vises.

DMIN

DMIN returnerer minimum indhold af en celle (felt) i en database som passer til de specificerede søgekriterier.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DMIN(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde den korteste afstand til skolen for børnene i hver klasse i det foregående eksempel (rul venligst opad), indtast følgende formel i B16:

=DMIN(A1:E10;"Afstand til skole";A13:E14)

I række 14, under klasse, indtast 1, 2, 3 og så videre, den ene efter den anden. Den korteste afstand til skolen for hver klasse vises.

DPRODUKT

DPRODUKT ganger alle celler i et dataområde, hvor celleindholdet opfylder søgekriteriet.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DPRODUKT(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

I fødselsdagsfesteksemplet ovenfor (rul venligst opad), er der ingen meningsfuld anvendelse af denne funktion.

DSTDAFV

DSTDAFV beregner standardafvigelsen af en population baseret på en stikprøve, ved brug af tallene i en databasekolonne som svarer til de givne betingelser. Dataposterne behandles som en stikprøve. Det betyder, at børnene i eksemplet repræsenter alle børn. Bemærk at et repræsentativt resultat ikke skaffes fra en stikprøve på mindre end tusind.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DSTDAFV(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde standardafvigelsen af vægten for alle børn på samme alder i eksemplet (rul venligst opad), indtast følgende formel i B16:

=DSTDAFV(A1:E10;"Vægt";A13:E14)

I række 14, under alder, indtast 7, 8, 9 og så videre, den ene efter den anden. Det viste resultatet er standardafvigelsen for vægten af alle børn på denne alder.

DSTDAFVP

DSTDAFVP beregner standardafvigelsen af en population baseret på alle celler af et dataområde, som passer til søgekriteriet. Dataposterne fra eksemplet bliver behandlet som hele populationen.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DSTDAFVP(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde standardafvigelsen af vægten for alle børn på samme alder ved Joes fødselsdagsfest (rul venligst opad), indtast følgende formel i B16:

=DSTDAFVP(A1:E10;"Vægt";A13:E14)

I række 14, under alder, indtast 7, 8, 9 og så videre, den ene efter den anden. Resultatet er standardafvigelsen for vægten for alle børn på samme alder, hvis vægt blev kontrolleret.

DSUM

DSUM returnerer summen af alle celler i et databasefelt i alle rækker (dataposter) som opfylder det angivne søgekriterium.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DSUM(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde længden af den kombinerede afstand til skolen for alle børn ved Joes fødselsdagsfest (se ovenfor) som går i anden klasse, indtast følgende formel i B16:

=DSUM(A1:E10;"Afstand til skole";A13:E14)

Indtast 2 i række 14 under klasse. Den viste sum (1950) er den samlede afstand til skole for alle børnene, som går i anden klasse.

DTÆL (DCOUNT på engelsk)

DTÆL tæller det antal rækker (dataposter) i en database som opfylder det angivne søgekriterium og som indeholder numeriske værdier i kolonnen DatabaseField.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DTÆL(Database; [Databasefelt]; Søgekriterier)

Hvis argumentet Databasefelt er udeladt, returnerer DTÆL antallet af alle poster, som opfylder kriterierne.For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

I eksemplet ovenfor (rul venligst op) ønsker vi at vide, hvor mange børn der har mere end 600 meter til skole. Resultatet skal vises i celle B16. Placer markøren i celle B16. Indtast formlen =DTÆL(A1:E10;D1;A13:E14) i B16. Funktionsguiden kan hjælpe dig med at indtaste celleområder.

Database er området med data, der skal søges i, inklusive overskrifter: i dette tilfælde A1:E10.Databasefelt angiver kolonnen til søgekriterierne: i dette tilfælde, kolonnen med de numeriske værdier for afstanden. Søgekriterier er området, hvor du kan indtaste søgeparametre: i dette tilfælde: A13:E14.

For at finde ud af hvor mange børn i anden klasse, der er mere end 7 år gamle, kan du slette indtastningen >600 i celle D14 og indtaste 2 i celle B14 under klasse, og indtaste >7 i celle C14 til højre. Resultatet er 2. To børn går i anden klasse og er over 7 år. Da begge kriterier er i den samme række, skal de forbindes med OG.

DTÆLV (DCOUNTA på engelsk)

DTÆLV tæller antal rækker (dataposter) i en database som passer til de angivne søgekriterier, og som indeholder numeriske eller alfanumeriske værdier.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DTÆLV(Database; [Databasefelt]; Søgekriterier)

Hvis argumentet Databasefelt er udeladt, returnerer DTÆLV antallet af alle poster, der opfylder kriterierne. For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

I eksemplet ovenfor kan du søge på antallet af børn, hvis navn starter med et E eller et bogstav senere end E i alfabetet. Rediger formlen i B16 til DTÆLV( A1:E10; "Navn"; A13:E14). Slet det gamle søgekriterium og indtast >=E under Navn i felt A14. Resultatet er 5. Hvis du nu sletter alle talværdier for Greta i række 8, ændres resultatet til 4. Række 8 indgår ikke længere i antallet, fordi den ikke indeholder nogen værdier. Navnet Greta er en tekst, ikke en værdi. Bemærk at parameteren Databasefelt skal pege på en kolonne, der kan indeholde værdier.

DVARIANS

DVARIANS returnerer variansen af alle cellerne for et databasefelt i alle dataposter, som opfylder det angivne søgekriterium. Dataposterne fra eksemplet bliver behandlet som en stikprøve. Et repræsentativt resultat kan ikke skaffes fra en population på mindre end et tusind.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DVARIANS(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde variansen af vægten af alle børn på samme alder af det eksemplet ovenfor (rul venligst opad), indtast følgende formel i B16:

=DVARIANS(A1:E10; "Vægt"; A13:E14)

I række 14, under alder, indtast 7, 8, 9 og så videre, den ene efter den anden. Som resultat ser du variansen af vægten for alle børn på denne alder.

DVARIANSP

DVARIANSP beregner variansen af alle celleværdier i et databasefelt i alle dataposter, som opfylder det angivne søgekriterium. Dataposterne fra eksemplet bliver behandlet som en hel population.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every character with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Syntaks

DVARIANSP(Database; Databasefelt; Søgekriterier)

For at referere til en kolonne ved hjælp af kolonneoverskriftens navn skal du sætte anførselstegn omkring kolonneoverskriftens navn.

Eksempel

For at finde variansen af vægten for alle børn på samme alder ved Joes fødselsdagsfest (se ovenfor), indtast følgende formel i B16:

=DVARIANSP(A1:E10; "Vægt"; A13:E14)

I række 14 skal du under alder indtaste 7, 8, 9 og så videre, den ene efter den anden. Variansen på vægten for alle børn på denne alder, som deltager ved Joes fødselsdagsfest, bliver vist.