I den här artikeln beskrivs formelsyntaxen för och användningen av DANTALV i Microsoft Excel.
Beskrivning
Beräknar de ifyllda cellernas värde i ett fält (kolumn) av poster i en lista eller databas som matchar ett villkor som du anger.
Fältargumentet är valfritt. Om fält utelämnas räknar DANTALV alla poster i databasen som matchar villkoren.
Syntax
DANTALV(databas; fält; villkorsområde)
Syntaxen för funktionen DANTALV har följande argument:
-
Databas Obligatoriskt. Det intervall av celler som listan eller databasen består av. En databas är en lista med relaterade data, i vilken rader med relaterad information utgör poster och datakolumner utgör fält. Första raden i listan innehåller etiketter för varje kolumn.
-
Fält Valfritt. Anger vilken kolumn som används i funktionen. Ange kolumnetiketten inom citattecken, t.ex. "Ålder" eller "Skörd", eller skriv ett tal (utan citattecken) som representerar kolumnens position i listan: 1 för den första kolumnen, 2 för den andra kolumnen o.s.v.
-
Villkor Obligatoriskt. Det cellområde som innehåller de villkor du anger. Du kan använda valfritt område för villkorsargumentet, men det måste innehålla minst en kolumnetikett och minst en cell under kolumnetiketten som du definierar ett villkor för kolumnen i.
Kommentarer
-
Det är valfritt vilket område du använder som villkorsargument, bara villkoret anges med minst en kolumnetikett och minst en cell under kolumnetiketten.
Om området G1:G2 innehåller kolumnetiketten Inkomst i G1 och beloppet 100 000 kr i G2, kan du definiera området som MatchaInkomst och använda det namnet som villkorsargument i databasfunktionerna.
-
Även om villkorsområdet kan placeras var som helst i kalkylbladet bör du inte placera det under listan. Om du lägger till mer information i listan läggs den nya informationen till på den första raden under listan. Om raden under listan inte är tom går det inte att lägga till den nya informationen i Excel.
-
Kontrollera att villkorsområdet inte överlappar listan.
-
Om du vill utföra en åtgärd på en hel kolumn i en databas, lägger du till en tom rad under kolumnetiketterna i villkorsområdet.
Exempel
Kopiera exempeldata i följande tabell och klistra in dem i cell A1 i ett nytt Excel-kalkylblad. När du vill att formlerna ska visa resultat markerar du dem, trycker på F2 och sedan på Retur. Om det behövs kan du justera kolumnernas bredd för att se alla data. Se till att markera alla celler i tabellen om du kopierar något av följande exempel i Excel, inklusive det i det övre vänstra hörnet.
Träd |
Höjd |
Ålder |
Skörd |
Vinst |
Höjd |
="=Äpple" |
>10 |
<16 |
|||
="=Päron" |
|||||
Träd |
Höjd |
Ålder |
Skörd |
Vinst |
|
Äpple |
18 |
20 |
14 |
105,0 |
|
Päron |
1,2 |
1,2 |
10 |
96,0 |
|
Körsbär |
1, 3 |
14 |
9 |
105,0 |
|
Äpple |
14 |
15 |
10 |
75,0 |
|
Päron |
9 |
8 |
8 |
76,8 |
|
Äpple |
8 |
9 |
6 |
45,0 |
|
Formel |
Beskrivning |
Resultat |
|||
=DANTALV(A4:E10; "Vinst"; A1:F2) |
Beräknar de rader (1) som innehåller "Äpple" i kolumn A med höjden >10 och <16. Endast rad 8 uppfyller dessa villkor. |
1 |
Exempel på villkor
-
När du skriver =text i en cell tolkar Excel det som en formel som ska beräknas. Om du vill skriva =text så att Excel inte försöker utföra en beräkning använder du följande syntax:
=''= post ''
Där post representerar den text eller det värde som du vill hitta. Till exempel:
Om du skriver |
Returneras |
="=Davolio" |
=Davolio |
="=30000" |
=30000 |
-
När du filtrerar textinformation görs ingen skillnad mellan gemener och versaler. Du kan emellertid använda en formel om du vill utföra en skiftlägeskänslig sökning.
Följande avsnitt innehåller exempel på komplexa villkor.
Flera villkor i en kolumn
Boolesk logik: (Försäljare = "Davolio" ELLER Försäljare = "Buchwald")
Om du vill returnera rader som uppfyller flera villkor för en kolumn, skriver du villkoren direkt under varandra på separata rader i villkorsområdet.
I följande dataområde (A6:C10) används villkorsområdet (B1:B3) för att räkna raderna som innehåller antingen "Davolio" eller "Buchwald" i kolumnen Försäljare.
|
Försäljare |
|
="=Olsson" |
||
="=Nilsson" |
||
|
||
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
4 500 kr |
Spannmål |
Buchwald |
63 280 kr |
Spannmål |
Gustavsson |
65 440 kr |
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C10;2;B1:B3) |
Beräknar antalet rader (3) i A6:C10 som uppfyller något av villkoren för "Försäljare" i raderna 2 och 3. |
'=DANTALV(A6:C10;2;B1:B3) |
Flera villkor i flera kolumner där alla villkor måste uppfyllas
Boolesk logik: (Typ = "Spannmål" OCH Försäljning > 2000)
Om du vill returnera rader som uppfyller flera villkor i flera kolumner skriver du alla villkor på samma rad i villkorsområdet.
I följande dataområde (A6:C10) används villkorsområdet (A1:C2) för att räkna alla rader som innehåller "Spannmål" i kolumnen Kategori och ett värde som är större än 2 000 kr i kolumnen Försäljning (A9:C10).
Kategori |
Säljare |
Försäljning |
="=Spannmål" |
>2000 |
|
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
4 500 kr |
Spannmål |
Nilsson |
935 USD |
Spannmål |
Gustavsson |
6 544 USD |
Drycker |
Buchwald |
3 677 USD |
Spannmål |
Gustavsson |
3 186 USD |
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C12;;A1:C2) |
Beräknar antalet rader (2) i A6:C12 som uppfyller något av villkoren för "säljare" i rad 2 (="Spannmål" och >2000). |
=DANTALV(A6:C12;;A1:C2) |
Flera villkor i flera kolumner där något av villkoren kan uppfyllas
Boolesk logik: (Typ = "Spannmål" ELLER Försäljare = "Davolio")
Om du vill returnera rader som uppfyller flera villkor i flera kolumner, där något av villkoren kan uppfyllas, skriver du villkoren på olika rader i villkorsområdet.
I följande dataområde (A6:C10) visar villkorsområdet (A1:B3) alla rader som innehåller "Spannmål" i kolumnen Typ eller "Gustavsson".
Kategori |
Försäljare |
|
="=Spannmål" |
||
="=Olsson" |
||
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
675 USD |
Spannmål |
Buchwald |
>937 USD |
Spannmål |
Nilsson |
|
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C10;"Försäljning";A1:B3) |
Beräknar antalet rader (2) i A6:C10 som uppfyller något av villkoren i A1:C3, där fältet "Försäljning" inte är tomt. |
=DANTALV(A6:C10;"Försäljning";A1:B3) |
Flera uppsättningar villkor där varje uppsättning innehåller villkor för flera kolumner
Boolesk logik: ( (Försäljare = "Davolio" OCH Försäljning >30000) ELLER (Försäljare = "Buchwald" OCH Försäljning > 15000) )
Om du vill returnera rader som uppfyller flera villkorsuppsättningar, där varje uppsättning innehåller villkor för flera kolumner, skriver du villkorsuppsättningarna på separata rader.
I följande dataområde (A6:C10) används villkorsområdet (B1:C3) för att räkna alla rader som innehåller både "Davolio" i kolumnen Försäljare och ett värde större än 30 000 kr i kolumnen Försäljning, eller alla rader som innehåller både "Buchwald" i kolumnen Försäljare och ett värde större än 15 000 kr i kolumnen Försäljning.
Kategori |
Säljare |
Försäljning |
="=Olsson" |
>3000 |
|
="=Nilsson" |
>1500 |
|
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
4 500 kr |
Spannmål |
Buchwald |
63 280 kr |
Spannmål |
Gustavsson |
65 440 kr |
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C10;;B1:C3) |
Beräknar antalet rader (2) i A6:C10 som uppfyller samtliga villkor i B1:C3. |
=DANTALV(A6:C10;;B1:C3) |
Flera uppsättningar villkor där varje uppsättning innehåller villkor för en kolumn
Boolesk logik: ( (Försäljning > 60000 OCH Försäljning < 65000 ) ELLER (Försäljning < 5000) )
Om du vill returnera rader som uppfyller flera uppsättningar villkor, där varje uppsättning innehåller villkor för en kolumn, tar du med flera kolumner med samma kolumnrubrik.
I följande dataområde (A6:C10) används villkorsområdet (C1:D3) för att räkna alla rader som innehåller värden mellan 60 000 och 65 000 eller värden som är mindre än 5 000 i kolumnen Försäljning (A8:C10).
Kategori |
Säljare |
Försäljning |
Försäljning |
>60000 |
<65000 |
||
<500 |
|||
Kategori |
Säljare |
Försäljning |
|
Drycker |
Suyama |
51 220 kr |
|
Kött |
Gustavsson |
4 500 kr |
|
Spannmål |
Buchwald |
63 280 kr |
|
Spannmål |
Gustavsson |
65 440 kr |
|
Formel |
Beskrivning |
Resultat |
|
'=DANTALV(A6:C10;;C1:D3) |
Beräknar antalet rader (2) som uppfyller villkoren i rad 2 (>6000 and <6500) eller uppfyller villkoren i rad 3 (<500). |
=DANTALV(A6:C10;;C1:D3) |
Villkor för att returnera textvärden med några tecken som är samma och några som är olika
Om du vill returnera textvärden som har några gemensamma tecken, men andra som är olika, gör du något av följande:
-
Skriv ett eller flera tecken utan likhetstecken (=) om du vill returnera rader med ett textvärde i en kolumn som börjar med dessa tecken. Om du exempelvis skriver texten Dav som ett villkor, returneras "Davolio", "David" och "Davis".
-
Använd ett jokertecken.
Följande jokertecken kan användas som jämförelsevillkor.
Använd |
Om du vill söka efter |
? (frågetecken) |
Ett enstaka tecken b?rg hittar t.ex. "berg" och "borg" |
* (asterisk) |
Valfritt antal tecken *ost hittar "nordost" och "sydost" |
~ (tilde) följt av ?, * eller ~ |
Ett frågetecken, en asterisk eller ett ~-tecken Exempel: år91~? hittar "år91?" |
I följande dataområde (A6:C10) används villkorsområdet (A1:B3) för att räkna alla rader där "Kö" är de första tecknen i kolumnen Typ eller där det andra tecknet är "u" i kolumnen Försäljare (A7:C9).
Kategori |
Säljare |
Försäljning |
Jag |
||
?u* |
||
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
4 500 kr |
Spannmål |
Buchwald |
63 280 kr |
Spannmål |
Gustavsson |
65 440 kr |
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C10;;A1:B3) |
Beräknar antalet rader (3) som uppfyller något av villkoren i A1:B3. |
=DANTALV(A6:C10;;A1:B3) |
Villkor som skapats som resultatet av en formel
Du kan använda ett beräknat värde som utgör resultatet av en formel som villkor. Tänk bara på följande:
-
Formeln måste beräknas till SANT eller FALSKT.
-
Eftersom du använder en formel skriver du formeln som vanligt och skriver inte uttrycket på följande sätt:
=''= post ''
-
Använd ingen kolumnetikett för villkorsetiketter. Låt villkorsetiketterna vara tomma eller använd en etikett som inte utgör en kolumnetikett i området (i exemplen nedan Beräknat medelvärde och Exakt matchning).
Om du använder en kolumnetikett i formeln i stället för en relativ cellreferens eller ett områdesnamn visas ett felvärde, t.ex. #NAMN? eller #VÄRDEFEL!, i cellen som innehåller villkoret. Du kan ignorera det här felet eftersom det inte påverkar hur området filtreras.
-
Den formel som du använder för villkoren måste använda en relativ referens för att referera till motsvarande cell på den första raden.
-
Alla andra referenser i formeln måste vara absoluta referenser.
Returnera värden som är större än det sammanlagda medelvärdet i dataområdet
I följande dataområde (A6:C10) används villkorsområdet (C1:C2) för att räkna alla rader som har ett värde i kolumnen Försäljning som är större än medelvärdet för alla försäljningsvärden (C7:C10). Medelvärdet beräknas i cell C4, och resultatet sammanfogas i cell C2 med formeln =">"&C4 till det villkor som används.
Försäljning |
||
=SAMMANFOGA(">",C4) |
||
Beräknat medelvärde |
||
=MEDEL(C7:C10) |
||
Kategori |
Säljare |
Försäljning |
Drycker |
Suyama |
51 220 kr |
Kött |
Gustavsson |
4 500 kr |
Spannmål |
Buchwald |
63 280 kr |
Spannmål |
Gustavsson |
65 440 kr |
Formel |
Beskrivning |
Resultat |
'=DANTALV(A6:C10;;C1:C2) |
Beräknar antalet rader (3) som uppfyller villkoret (>4611) i C1:C2. Villkoret i C2 skapas genom att sammanfoga =">" med cell C4, som är det beräknade medelvärdet för C7:C10. |
=DANTALV(A6:C10;;C1:C2) |