PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelANTAL.OM i rader (variant)ANTAL.OM i rader (variant)
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2018-10-07 20:39
 
Säg att jag har 100 rader i fem kolumner (A-E). A1-E100

Jag vill veta antalet RADER som har värden mellan 10-20.

Men jag vill INTE ha det totala antalet värden mellan 10-20 utan ENDAST hur många RADER som uppfyller villkoret. Om en rad innehåller 10,15,20 vill jag alltså bara att det ska generera att raden uppfyller villkoren, INTE att det finns tre värden på raden som uppfyller villkoret.

Tacksam om nån kan knäcka detta! Gärna en liten förklaring till formeln :)

Nytt inlägg
 2018-10-08 11:36
 

Hej!

Som jag ser det så behöver du göra detta i två steg.

Steg 1: Kollar av rad 1 om det finns något värde mellan 10 och 20, är resultatet sant så blir det en 1 och falskt en tom cell.

Lek med tanken att vi använder oss av kolumn G för detta, så lägger du in nedanstående funktion i G1 och sedan kopierar nedåt det antal rader som önskas. 

=OM(OCH(A1<21;A1>9);1;OM(OCH(B1<21;B1>9);1;OM(OCH(C1<21;C1>9);1;OM(OCH(D1<21;D1>9);1;OM(OCH(E1<21;E1>9);1;"")))))

Steg 2: Summerar ihop kolumn G, i ditt exempel blir det =summa(G1:G100), resultatet du får fram är antal rader som uppfyller ditt villkor.

Mvh Ingvar

Nytt inlägg
 2018-10-08 16:22
 
 Ändrad av anonymous  på 2018-10-08 16:40:34

Om du utgår ifrån Ingvars upplägg så ger den här formeln en etta om rad1 uppfyller dina villkor

=(ANTAL.OMF(A1:E1;">=10";A1:E1;"<=20")>0)*1

Det kan du summera precis som Ingvar föreslår.

Man hoppar över diverse om-formler eftersom ett villkor inom en parantes gör så att Excel returnerar sant/falskt  som kan muliplicerarar med en etta för att få fram ett 0/1 värde som går att summera (Sant/falskt är egentligen 0/1, men man måste gångra för att det skall synas)

 

Ett alternativ är att knöla in det i en och samma formel. 

Om vi börjar med något enklare exempel och räknar antalet större än 10 på rad1 med formeln

=ANTAL.OM(A1:E1;">10")

mata exempelvis in i cell F1 och kopiera ner så ändras formel automatiskt till 

=ANTAL.OM(A2:E2;">10")

=ANTAL.OM(A3:E3;">10")

osv

 

Man kan krångla till formeln så här :

=ANTAL.OM(FÖRSKJUTNING($A$1:$E$1;RAD()-1;0);">10")

t.ex i G1, kopierar du ner formel så ser du att båda ger samma svar.

 

Man låser alltså startraden till $A$1:$E$1 och sen används FÖRSKJUTNING() för att förskjuta området man tittar i ett antal rader (formeln RAD() ger radnumret som formeln står i och ändras när du kopierar ner formeln.)

Varför vill man krångla till det så förbaskat? Jo, för att man kan använda Förskjutning och be Excel köra rad för rad med en matrisformel eller PRODUKTSUMMA. 

Det här ger samma svar som om du summerar de 10 första raderna

=PRODUKTSUMMA(ANTAL.OM(FÖRSKJUTNING(A1:E1;RAD(1:10)-1;0);">10"))

Tricket ligger i  RAD(1:10)  som helt enkelt är ett sätt att skicka in siffrorna 1,2,3,4...10 ett i taget i formeln. Excel börja i A1:E1 och sedan förskjuts det till A2:E2, A3:E3 osv 10 gånger

 

Så för din urspungsfråga blir formeln:

PPRODUKTSUMMA((ANTAL.OMF(FÖRSKJUTNING(A1:E1;RAD(1:100)-1;0);">=10";FÖRSKJUTNING(A1:E1;RAD(1:100)-1;0);"<=20")>0)*1)

 

Som är samma sak som att köra formeln

=(ANTAL.OMF(A1:E1;">=10";A1:E1;"<=20")>0)*1

 i G1 och kopiera ner till G100 och summerar som Ingvar föreslår.  Det är nog den bästa metoden. Men nu vet du att det går med en formel i alla fall...

Nytt inlägg
 2018-10-10 18:25
 
Tack för svar och för att ni tog er tid, Ingvar och anonymus! Ska titta på bägge lösningarna.
Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelANTAL.OM i rader (variant)ANTAL.OM i rader (variant)

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter