Documentatie/Calc-functies/INDEX

    From The Document Foundation Wiki
    This page is a translated version of the page Documentation/Calc Functions/INDEX and the translation is 100% complete.
    Other languages:


    Functienaam:

    INDEX

    Categorie:

    Werkblad

    Samenvatting:

    In zijn eenvoudigste vorm kan INDEX worden gebruikt om de waarde in een bepaalde cel (gespecificeerd door rij- en kolomnummer) binnen een gegevenstabel te bepalen. Afhankelijk van de context kan INDEX ook worden gebruikt om de verwijzing van de cel op het snijpunt van de opgegeven rij en kolom te bepalen.

    INDEX is een krachtige functie die kan worden gebruikt om waarden op te zoeken in meerdere, niet-aangrenzende celbereiken en die in een matrixcontext kan worden gebruikt om meerdere waarden te retourneren. De flexibiliteit wordt vergroot wanneer INDEX wordt gebruikt in combinatie met de functie VERGELIJKEN, waardoor formules beter kunnen reageren op veranderingen in de invoergegevens.

    Syntaxis:

    De algemene syntaxis voor de functie INDEX is:

    • INDEX(Verwijzing[; Rij[; Kolom[; Bereik]]])

    In het speciale geval dat het eerste argument slechts één kolom heeft, kan de volgende vereenvoudigde syntaxis worden gebruikt:

    • INDEX(Verwijzing; Rij)

    In het speciale geval dat het eerste argument slechts één rij heeft, kan de volgende alternatieve syntaxis worden gebruikt:

    • INDEX(Verwijzing; Kolom)

    Retourneert:

    Technisch gezien retourneert INDEX een celverwijzing. Afhankelijk van de gebruikte formule kan de geretourneerde waarde echter worden gebruikt als een waarde (waarvan het type wordt bepaald door de set invoergegevens) of een celverwijzing.

    Argumenten:

    Verwijzing is een lijst met verwijzingen die het (de) bereik(en) van cellen specificeert die worden ingenomen door de invoergegevenstabel(len). Het neemt één van de volgende vormen aan:

    • Een enkel celbereik (bijvoorbeeld A1:E10).
    • Meerdere celbereiken kunnen als één argument worden doorgegeven door ze in een gescheiden lijst op te geven, omringd door haakjes, bijvoorbeeld =INDEX((A1:B6; C2:D7; E3:F8); …). In dit geval zal Calc uw functieaanroep opnieuw opmaken om de tilde referentie-aaneenschakelingsoperator te gebruiken – bijvoorbeeld =INDEX((A1:B6~C2:D7~E3:F8); …). Als alternatief kunt u de tilde referentie-aaneenschakelingsoperator rechtstreeks zonder haakjes gebruiken – bijvoorbeeld =INDEX(A1:B6~C2:D7~E3:F8; …).
    • Een enkel celbereik waarnaar wordt verwezen door de naam van een databasebereik (gedefinieerd inGegevens ▸ Bereik definiëren op de menubalk) te selecteren .
    • Eén of meer celbereiken waarnaar wordt verwezen door de naam van een benoemd bereik. Benoemde bereiken die zijn gedefinieerd met Blad ▸ Benoemde bereiken en expressies ▸ Definiëren op de menubalk kunnen worden geconfigureerd om meerdere gebieden te omvatten met behulp van de aaneenschakelingsoperator tilde-verwijzing in het veld Bereik of formule-expressie van het dialoogvenster Bereik definiëren.
    • Een inline matrix (bijvoorbeeld {1, 2, 3; 4, 5, 6}).

    Rij is een niet-negatieve integerwaarde of een verwijzing naar een cel die een dergelijke waarde bevat, dat wil zeggen de vereiste rijverschuiving vanaf de linkerbovenhoek van de gegevenstabel. In het geval van een matrixformule kan het argument Rij worden ingevoerd als een inline matrix om meerdere waarden op te halen. Het weglaten van het argument Rij (met twee opeenvolgende puntkomma's) of het instellen op de speciale waarde 0 wordt gebruikt in de matrixcontext om aan te geven dat waarden voor alle rijen moeten worden geretourneerd voor de opgegeven kolom.

    Kolom is een niet-negatieve integerwaarde of een verwijzing naar een cel die een dergelijke waarde bevat, dat wil zeggen de vereiste kolomverschuiving vanaf de linkerbovenhoek van de gegevenstabel. In het geval van een matrixformule kan het argument Kolom worden ingevoerd als een inline matrix om meerdere waarden op te halen. Het weglaten van het argument Kolom (met twee opeenvolgende puntkomma's) of het instellen op de speciale waarde 0 wordt gebruikt in de matrixcontext om aan te geven dat waarden voor alle kolommen moeten worden geretourneerd voor de opgegeven rij.

    Bereik is een positief geheel getal (standaardwaarde 1) of een verwijzing naar een cel die een dergelijke waarde bevat, die het subbereik aangeeft dat moet worden gebruikt wanneer het argument Verwijzing meerdere gebieden omvat. Als bijvoorbeeld Verwijzing is ingesteld op A1:B6~C2:D7~E3:F8, stel dan Bereik in op 1 voor celbereik A1:B6, stel Bereik in tot 2 voor celbereik C2:D7 en stel Bereik in op 3 voor celbereik E3:F8. In het geval dat Verwijzing meerdere gebieden omvat maar er geen waarde is opgegeven voor het argument Bereik, wordt de standaardwaarde 1 aangenomen. In het geval van een matrixformule kan het argument Bereik worden ingevoerd als een inline matrix om meerdere waarden op te halen.

    De volgende voorwaarden kunnen zich voordoen:

    • Als een Rij, Kolom of Bereik niet-numeriek is, retourneert INDEX als fout #WAARDE!
    • Als de waarden Rij, Kolom of Bereik een niet-geheel getal is, dan kapt INDEX deze af tot een geheel getal.
    • Als, na afkapping, Rij of Kolom een negatieve waarde is, dan retourneert INDEX als fout Ongeldig argument (Fout:502).
    • Als Rij, na afkapping, groter is dan het aantal rijen in het celbereik dat is geïndexeerd door het argument Bereik, dan retourneert INDEX als fout Ongeldig argument (Fout:502).
    • Als Kolom, na afkapping, groter is dan het aantal kolommen in het celbereik dat is geïndexeerd door het argument Bereik, dan retourneert INDEX als fout Ongeldig argument (Fout:502).
    • Als Bereik, na afkapping, kleiner is dan 1 of groter is dan het aantal celbereiken gedefinieerd in Verwijzing, dan retourneert INDEX als fout #VERW!.

    Aanvullende details:

    • INDEX kan worden gebruikt in een matrixformule. Voer bijvoorbeeld de matrixformule { =INDEX($A$1:$D$4; {1;3}; 2) } in met Ctrl+Shift+Enter ("CSE") in plaats van alleen Enter. Er worden twee waarden geretourneerd: de waarde uit cel B1 wordt weergegeven in de formulecel en de waarde uit cel B3 wordt weergegeven in de cel onder de formulecel.
    • Voor inline arraywaarden kunnen de respectieve scheidingstekens die in formules moeten worden gebruikt, worden geconfigureerd in Extra ▸ Opties ▸ LibreOffice Calc ▸ Formule, in het gebied Scheidingstekens.

    Voorbeelden:

    De eerste reeks voorbeelden maakt gebruik van de volgende gegevenstabel:

    A B C D
    1
    2 4 5 6
    3 rood groen blauw
    4 WAAR ONWAAR WAAR
    Formule Beschrijving Retourneert
    =INDEX(B2:D4; 1; 1) Retourneert de gegevens in cel B2. Merk op hoe de argumenten Rij en Kolom verschoven zijn ten opzichte van het opgegeven celbereik, niet ten opzichte van het werkblad. 4
    =INDEX(Gegevenstabel; G1; G2)

    waarbij Gegevenstabel de naam is van een databasebereik dat het celbereik B2:D4 omvat en waarbij de cellen G1 en G2 beide het getal 2 bevatten.

    Retourneert de waarde in cel C3, de intersectie van de tweede rij met de tweede kolom binnen Gegevenstabel. groen
    =INDEX(C3:D4; 2; 2) Retourneert de waarde in cel D4. WAAR
    =INDEX(B2:B4; 3) Retourneert de waarde in de derde cel B4. Hier wordt de vereenvoudigde syntaxis gebruikt die beschikbaar is voor een gegevensset met één kolom. WAAR
    =INDEX(B3:D3; 2) Retourneert de waarde in de tweede cel C3. Merk op hoe de vereenvoudigde syntaxis wordt gebruikt die beschikbaar is voor een gegevensset met één rij. groen
    =INDEX(B2:D4; 2; 0) }

    met gebruik van CSE.

    Retourneert een rij van drie waarden, van de tweede rij van de invoergegevens.

    De tekenreeks "rood" verschijnt in de formulecel, "groen" verschijnt in de volgende cel aan de rechterkant, met "blauw" in de cel rechts daarvan.

    rood groen blauw
    =INDEX(B2:D4; 0; 2) }

    met gebruik van CSE.

    Retourneert een kolom met drie waarden, van de tweede kolom van de invoergegevens.

    Het getal 5 verschijnt in de formulecel; "groen" verschijnt in de cel eronder, met het getal 0 in de cel daaronder. De oorspronkelijke Booleaanse waarde ONWAAR wordt in dit scenario geconverteerd naar de numerieke waarde.

    5
    groen
    0
    =INDEX(B2:D4; {2; 3}; 3) }

    met gebruik van CSE.

    Retourneert een kolom met twee waarden, overeenkomend met de waarden in de cellen D3 en D4 van de invoergegevens.

    De tekenreeks "blauw" verschijnt in de formulecel en de waarde 1 verschijnt in de cel eronder. De oorspronkelijke Booleaanse WAAR wordt in dit scenario geconverteerd naar de numerieke waarde.

    blauw
    1

    De volgende tabel geeft aanvullende voorbeelden die geen verband houden met de bovenstaande tabel met voorbeeldgegevens.

    Formule Beschrijving Retourneert
    =INDEX(A1:C3~A5:C7~A9:C11; 1; 1)

    =INDEX(A1:C3~A5:C7~A9:C11; 1; 1; 1)

    Als er geen waarde is opgegeven voor het argument Bereik, wordt de standaardwaarde 1 gebruikt.

    Retourneert de gegevens in de cel die op het snijpunt van rij 1 en kolom 1 ligt, in het eerste gebied dat is gedefinieerd in het argument Verwijzing.

    Inhoud van cel A1
    =INDEX(A1:C3~A5:C7~A9:C11; 1; 1; 2) Retourneert de gegevens in de cel die op het snijpunt van rij 1 en kolom 1 ligt, in het tweede gebied dat is gedefinieerd in het argument Verwijzing. Inhoud van cel A5
    =INDEX(DrieGebieden; 3; 3; 3)

    waarbij DrieGebieden is gedefinieerd als een benoemd bereik met behulp van formule-expressie $A$1:$C$3~$A$5:$C$7~$A$9:$C$11.

    Retourneert de gegevens in de cel die op het snijpunt van rij 3 en kolom 3 ligt, in het derde gebied dat is gedefinieerd in het argument Verwijzing. Inhoud van cel C11
    =INDEX(DrieGebieden; 2; 2; {1;2;3}) }

    met gebruik van CSE. DrieGebieden is gedefinieerd als een benoemd bereik met behulp van de formule-expressie $A$1:$C$3~$A$5:$C$7~$A$9:$C$11. {1;2;3} is een een-kolom inline matrix van 3 rijen voor het Bereik argument, met gebruik van puntkomma als scheidingsteken van de rijen.

    Retourneert de gegevens in de cel die op het snijpunt van rij 2 en kolom 2 ligt, in elk van de drie gebieden die zijn gedefinieerd in het argument Verwijzing. De drie waarden worden geretourneerd in een kolom.

    Inhoud van de cellen B2, B6 en B10
    =INDEX({1,3,5; 7,9,10}; {2;1}; 1; 1) }

    met gebruik van CSE. {1,3,5; 7,9,10} is een inline matrix met 3 kolommen bij 2 rijen, met puntkomma als scheidingsteken voor de rijen en komma voor de kolommen.

    Georganiseerd in één kolom van twee rijen: retourneer vanaf de tweede regel de eerste waarde; Retourneer vanaf de eerste regel de eerste waarde.
    7
    1
    =CEL("address"; INDEX(A2:C6; 2; 2))

    De functie INDEX retourneert de referentie naar cel B3. De functie CEL retourneert dan het absolute adres van cel B3 (dat is $B$3).

    $B$3

    Gerelateerde LibreOffice-functies:

    BEREIKEN

    KIEZEN

    VERGELIJKEN

    ODF standaard:

    Section 6.14.6, part 2

    Typfout in INDEX () beschrijving voor eendimensionale rijvector

    Gerelateerde (of gelijkwaardige) Excel-functies:

    INDEX