Excel-formule: minimumwaarde indien uniek -

Generieke formule

=MIN(UNIQUE(range,0,1))

Samenvatting

Om de minimale unieke waarde in een set gegevens te vinden, kunt u de functie UNIEK samen met de functie MIN gebruiken. In het onderstaande voorbeeld is de formule in E5:

=MIN(UNIQUE(data,0,1))

waarbij "data" het benoemde bereik B5: B14 is.

In oudere versies van Excel kunt u een matrixformule gebruiken op basis van de MIN-, ALS- en AANTAL.ALS-functies, zoals hieronder wordt uitgelegd.

Uitleg

Het doel in dit voorbeeld is om de minimale waarde te retourneren die uniek is, dwz de minimale waarde die slechts één keer in de gegevens voorkomt.

De functie UNIEK, nieuw in Excel 365, retourneert een unieke lijst met waarden uit een set gegevens. Standaard is dit een lijst met elke waarde die een of meerdere keren in de gegevens voorkomt.

UNIQUE heeft een optioneel derde argument genaamd "exact_ eenmaal" dat de resultaten zal beperken tot waarden die slechts één keer voorkomen in de brongegevens. Om deze functie in te schakelen, moet het argument worden ingesteld op TRUE of 1.

De functie UNIQUE werkt van binnen naar buiten en is als volgt geconfigureerd:

UNIQUE(data,0,1)

Voor array, bieden we het benoemde bereik data . Voor het by_col-argument gebruiken we nul (0), omdat we unieke waarden willen per rij, niet per kolom. Ten slotte geven we voor exact_ één keer 1, omdat we alleen waarden willen die slechts één keer voorkomen in de brongegevens.

Op deze manier geconfigureerd, geeft UNIQUE de 4 waarden terug die slechts één keer voorkomen:

(700;600;500;300) // result from unique

Deze array wordt rechtstreeks teruggestuurd naar de MIN-functie, die de minimumwaarde, 300, retourneert als het eindresultaat:

=MIN((700;600;500;300)) // returns 300

Matrixformule met AANTAL.ALS

Als u een versie van Excel gebruikt zonder de functie UNIQUE, kunt u de minimale unieke waarde vinden met een matrixformule op basis van de functies AANTAL.ALS, MIN en ALS.

(=MIN(IF(COUNTIF(data,data)=1,data)))

Dit is een matrixformule en moet worden ingevoerd met control + shift + enter, behalve in Excel 365.

Als u van binnen naar buiten werkt, wordt de AANTAL.ALS-functie gebruikt om als volgt een telling van elke waarde in de gegevens te genereren:

COUNTIF(data,data) // count all values

Omdat er 10 waarden in het genoemde traject data , COUNTIF retourneert een matrix van 10 resultaten:

(2;1;1;2;1;2;2;2;1;2)

Deze array bevat het aantal van elke waarde. Vervolgens testen we de array op waarden gelijk aan 1:

(2;1;1;2;1;2;2;2;1;2)=1

Nogmaals, we krijgen een array met 10 resultaten:

(FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE)

Elke WAAR-waarde komt overeen met een waarde in de brongegevens die slechts één keer voorkomt. Deze array wordt rechtstreeks aan de IF-functie geleverd, die deze als een filter gebruikt. Alleen waarden in gegevens die zijn gekoppeld aan TRUE, komen in de array terecht die wordt geretourneerd door IF, alle andere waarden zijn FALSE.

(FALSE;700;600;FALSE;500;FALSE;FALSE;FALSE;300;FALSE)

Deze array wordt direct teruggestuurd naar de MIN-functie die automatisch logische waarden negeert en het minimum van de resterende waarden, 300, retourneert als een eindresultaat.

Interessante artikelen...