Documentatie/Calc-functies/DBLEZEN

From The Document Foundation Wiki
Jump to navigation Jump to search
This page is a translated version of the page Documentation/Calc Functions/DGET and the translation is 100% complete.
Other languages:
English • ‎Nederlands



Functienaam:

DBLEZEN

Categorie:

Database

Samenvatting:

Dit is één van de twaalf functies in de categorie Database waarmee u een eenvoudige database kunt analyseren die een rechthoekig werkbladgebied met kolommen en rijen in beslag neemt, waarbij de gegevens als één rij voor elk record zijn georganiseerd. De kopcel van elke kolom geeft de naam van de kolom weer en die naam geeft meestal de inhoud van elke cel in die kolom weer.


DBLEZEN retourneert de inhoud van de cel (veld) van de opgegeven kolom, voor de enkele rij (databaserecord) die overeenkomt met de opgegeven zoekcriteria.

Syntaxis:

DBLEZEN(Database; Databaseveld; Zoekcriteria)

Retourneert:

Retourneert de inhoud van de cel die voldoet aan de opgegeven criteria, die numeriek of niet-numeriek kunnen zijn.

Retourneert Err:502 (Ongeldig argument) als er meerdere overeenkomsten zijn gevonden of een fout #WAARDE! (verkeerd gegevenstype) als er geen overeenkomsten worden gevonden. Een fout WAARDE! wordt ook gerapporteerd als een enkele overeenkomst wordt gevonden, maar de relevante cel leeg is.

Argumenten:

Overzicht van argumenten

Alle functies in de categorie Database hebben de volgende drie argumenten:

  1. Database. Het celbereik van de database.
  2. Databaseveld. De kolom met de gegevens die in de berekeningen van de functie moeten worden gebruikt.
  3. Zoekcriteria. Het celbereik van een afzonderlijk gebied van het werkblad met zoekcriteria.

Deze argumenten worden uitgebreider beschreven in de volgende alinea's.

Database argument

Database specificeert het celbereik dat wordt ingenomen door de databasetabel. De eerste rij van het bereik bevat de veldnamen en de volgende rijen zijn records met bijbehorende veldwaarden.

  • Een manier om het celbereik te definiëren, is door de celverwijzing voor de cel linksboven in te voeren, gevolgd door een dubbele punt (:), en vervolgens de celverwijzing rechtsonder. Een voorbeeld kan A1:E10 zijn.
  • Het argument Database kan ook worden gespecificeerd door de naam van een benoemd bereik of databasebereik door te geven. Het gebruik van een betekenisvolle naam om het celbereik te definiëren, kan de leesbaarheid van de formule en het documentonderhoud verbeteren. Als de naam niet overeenkomt met de naam van een gedefinieerd bereik, rapporteert Calc als fout #NAAM?.
  • Andere fouten die kunnen worden gemeld als gevolg van een ongeldig Database-argument zijn #WAARDE! en Fout:504 (Fout in lijst met parameters).

Databaseveld argument

Databaseveld specificeert de kolom die de functie zal gebruiken voor zijn berekeningen nadat de zoekcriteria zijn toegepast en de gegevensrijen zijn geselecteerd. Het is niet gerelateerd aan de zoekcriteria.

  • Geef het argument Databaseveld op één van de volgende manieren op:
  1. Door een verwijzing in te voeren naar een kopcel binnen het gebied Database. Als alternatief, als de cel een herkenbare naam heeft gekregen als een benoemd bereik of databasebereik, voert u die naam in. Als de naam niet overeenkomt met de naam van een gedefinieerd bereik, retourneert Calc als fout #NAAM?. Als de naam geldig is maar niet overeenkomt met slechts één cel, retourneert Calc als fout Fout:504 (Fout in lijst met parameters).
  2. Door een getal in te voeren om de kolom op te geven in het gebied Database, beginnend met 1. Als bijvoorbeeld een Database het celbereik D6:H123 inneemt, voer dan 3 in om aan te geven de kopcel op F6. Calc verwacht een geheel getal dat ligt tussen 1 en het aantal kolommen gedefinieerd in Database en negeert alle cijfers achter de komma. Als de waarde kleiner is dan 1, retourneert Calc als fout Fout:504 (Fout in lijst met parameters). Als de waarde groter is dan het aantal kolommen in Database, retourneert Calc als fout #WAARDE!.
  3. Door de letterlijke kolomkopnaam in te voeren uit de eerste rij van het Database-bereik en aanhalingstekens rond de kopnaam te plaatsen. Bijvoorbeeld 'Afstand naar school'. Als de tekenreeks niet overeenkomt met één van de kolomkoppen van het Database-gebied, retourneert Calc als fout Fout:504 (Fout in lijst met parameters). U kunt ook een verwijzing geven naar een willekeurige cel (niet binnen de gebieden Database en Zoekcriteria) die de vereiste tekenreeks bevat.
  • Het argument Databaseveld is optioneel voor de functies DBAANTAL en DBAANTALA, maar is vereist voor de andere tien databasefuncties.

Zoekcriteria-argument

Zoekcriteria specificeert het celbereik met zoekcriteria. Net als Database zijn de eerste rij ook veldnamen en zijn de volgende rijen voorwaarden voor gerelateerde velden. De gebieden Database en Zoekcriteria hoeven niet aangrenzend te zijn of zelfs maar op hetzelfde blad te staan.

  • Een manier om het celbereik te definiëren, is door de celverwijzing voor de cel linksboven in te voeren, gevolgd door een dubbele punt (:), en vervolgens de celverwijzing rechtsonder. Bijvoorbeeld A13:B14. Het celbereik kan ook worden gespecificeerd door de naam van een gedefinieerd benoemd bereik of databasebereik door te geven. Als de naam niet overeenkomt met de naam van een gedefinieerd bereik, retourneert Calc als fout #NAAM?.
  • Fout:504 (Fout in lijst met parameters) kan ook worden geretourneerd als gevolg van een ongeldig Zoekcriteria-argument.
  • De inhoud van het gebied Zoekcriteria wordt gedetailleerder beschreven in de gedeelte Aanvullende details: hieronder.


  • In het geval van een fout, retourneert de functie #WAARDE! voor geen rij gevonden of Err502 voor meer dan één gevonden cel.

Aanvullende details:

Overzichtsconcept van de bewerking

  • Alle functies in de categorie Database hebben hetzelfde algemene werkingsconcept. De eerste logische stap is om de gespecificeerde Zoekcriteria te gebruiken om de subset van records in de Database te identificeren die tijdens volgende berekeningen moeten worden gebruikt. De tweede stap is het extraheren van de gegevenswaarden en het uitvoeren van de berekeningen die zijn gekoppeld aan de specifieke functie (gemiddelde, som, product, enzovoort). De verwerkte waarden zijn die in de kolom Databaseveld van de geselecteerde records.
  • De categorie Database met functies in Calc wordt soms verward met een database die wordt beheerd met LibreOffice Base. Er is echter geen verbinding tussen een database in de databasefuncties van Base en Calc.

Zoekcriteria definiëren

  • Het aantal kolommen dat wordt ingenomen door het gebied Zoekcriteria hoeft niet hetzelfde te zijn als de breedte van het gebied Database. Alle koppen die in de eerste rij van Zoekcriteria verschijnen, moeten identiek zijn aan de koppen in de eerste rij van Database. Niet alle koppen in Database hoeven echter in de eerste rij van Zoekcriteria te verschijnen, terwijl een kop in Database meerdere keren in de eerste rij van Database kan verschijnen. 'Zoekcriteria.
  • Zoekcriteria worden ingevoerd in de cellen van de tweede en volgende rijen van het gebied Zoekcriteria, onder de rij met koppen. Lege cellen in het gebied Zoekcriteria worden genegeerd.
  • Maak criteria in de cellen van het gebied Zoekcriteria met behulp van de vergelijkingsoperatoren <, <=, =, <>, >= en >. De operator = wordt aangenomen als een cel niet leeg is, maar niet begint met een vergelijkingsoperator.
  • Als u meerdere criteria in één rij schrijft, zijn ze verbonden door EN. Als u meerdere criteria in verschillende rijen schrijft, zijn ze verbonden door OF.
  • Criteria kunnen worden gemaakt met jokertekens, op voorwaarde dat jokertekens zijn ingeschakeld via de optie Jokertekens in formules inschakelen in het dialoogvenster Extra ▸ Opties ▸ LibreOffice Calc ▸ Berekenen (LibreOffice  ▸ Voorkeuren ▸ LibreOffice Calc ▸ Berekenen op macOS). Als interoperabiliteit met Microsoft Excel belangrijk is voor uw werkblad, moet deze optie worden ingeschakeld.
  • Er kunnen nog krachtigere criteria worden gemaakt met behulp van reguliere expressies, op voorwaarde dat reguliere expressies zijn ingeschakeld via de optie Reguliere expressies in formules toestaan in het dialoogvenster Extra ▸ Opties ▸ LibreOffice Calc ▸ Berekenen .

{{ Note| Bij gebruik van functies waarbij één of meer argumenten zoekcriteriareeksen zijn die een reguliere expressie vertegenwoordigen, is de eerste poging om de tekenreekscriteria om te zetten in getallen. ".0" wordt bijvoorbeeld geconverteerd naar 0.0 enzovoort. Als dit lukt, is de overeenkomst geen overeenkomst met reguliere expressies, maar een numerieke overeenkomst. Als u echter overschakelt naar een landinstelling waar het decimaalteken niet de punt is, werkt de conversie van reguliere expressies. Om de evaluatie van de reguliere expressie te forceren in plaats van een numerieke expressie, gebruikt u een expressie die niet verkeerd kan worden gelezen als numeriek, zoals ".[0]" of ".\0" of "(?i).0".} }

  • Een andere instelling die van invloed is op de manier waarop de zoekcriteria worden afgehandeld, is de optie Zoekcriteria = en <> moeten op hele cellen toepasbaar zijn in het dialoogvenster Extra ▸ Opties ▸ LibreOffice Calc ▸ Berekenen. Deze optie bepaalt of de zoekcriteria die u instelt voor de databasefuncties exact moeten overeenkomen met de hele cel. Als interoperabiliteit met Microsoft Excel belangrijk is voor uw werkblad, moet deze optie worden ingeschakeld.
  • Veel meer voorbeelden van deze zoekcriteria zijn te vinden in dit Calc werkblad.

Datums en logische waarden

Datums en logische waarden (WAAR en ONWAAR) worden als numeriek behandeld bij het berekenen met de Database-functies.


Voorbeelden:

De volgende databasetabel beslaat de cellen A1:E10 van een verder leeg blad en bevat informatie over de gasten die zijn uitgenodigd voor Joe's verjaardagsfeestje. Voor elke gast vermeldt de tabel hun naam, schoolklas, leeftijd (in jaren), afstand tot school (in meters) en gewicht (in kilogram).


A B C D E
1 Naam Schoolklas Leeftijd Afstand naar school Gewicht
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

De inhoud van cellen A12:E12 moet identiek zijn aan de kolomkoppen voor de databasetabel in cellen A1:E1. Zorg ervoor dat cellen A13:E13 leeg zijn, behalve cel C13 die "11" moet bevatten (dit zoekcriterium komt overeen met records in de databasetabel met een waarde van 11 in de kolom Leeftijd).

Formule Beschrijving Retourneert
=DBLEZEN(A1:E10; "Naam"; A12:E13) Voer deze formule in een lege cel elders in het blad in om de naam te vinden van een gast van Joe die 11 jaar oud is. Daniel
=DBLEZEN(A1:E10; "Naam"; A12:E13) waarbij de waarde in cel C13 wordt gewijzigd in 10. Voer deze formule in een lege cel elders in het blad in om de naam te vinden van de gast van Joe die 10 jaar oud is. In dit geval komen meerdere records overeen met het opgegeven criterium (zowel Betty als Charles zijn 10 jaar) en dus retourneert DBLEZEN als fout Ongeldige argument. Fout:502

Veel meer voorbeelden van zowel zoekcriteria als functieaanroepen zijn te vinden in deze Calc-spreadsheet.

Gerelateerde LibreOffice-functies:

DBGEMIDDELDE

DBAANTAL

DBAANTALA

DBMAX

DBMIN

DBPRODUCT

DBSTDEV

DBSTDEVP

DBSOM

DBVAR

DBVARP

ODF standaard:

Section 6.9.5, part 2

Gelijkwaardige Excel-functies:

DBLEZEN