webForumDet fria alternativet

Excel - Villkorssummera

11 svar · 907 visningar · startad av Danny

DannyMedlem sedan juli 200412 913 inlägg
#1

Jag har klurat länge men inte kommit på hur man får detta att fungera, se bild.

I varje kolumn har jag beräknat summa på rad 6 där. MEN, om det inte finns ett kryss i rutan godkänd för respektive rad, så ska inte summan returneras, utan ett x!

Det är alltså två villkor för summan, det ska vara en siffra på samma rad som ett godkänt-kryss för att det ska returneras ett kryss i summan.

Fattar inte hur man gör det där!?

Har testat att typ lägga följande formel, "=OM(OCH(D2<>"";N2="x");1;0)" på varje rad men då måste man ju också veta vilken det var och det blir bara för krångligt så jag ser ingen lösning på det sättet.

excel.jpg
SirPeterMedlem sedan feb. 200115 571 inlägg
#2

=OM(N2="X";SUMMA(B2:B4);"X")

Om jag har tolkat dig rätt.

DannyMedlem sedan juli 200412 913 inlägg
#3

Där kollar man ju bara en av raderna med N2. Den måste kolla alla rader.

T ex summan för februari. Där kollar den först vilka som levererat, Olle (54) och Sune (3) i det fallet. Sedan måste den kolla om någon av dessa inte är förkryssade i "godkänd", i just februari så är Olle inte förkryssad och då generar det ett kryss på summan.

Bra rörigt det där, fattar knappt själv, fick bara uppdraget att ordna detta :)

DannyMedlem sedan juli 200412 913 inlägg
#4

Hade jag programmerat detta hade det blivit typ följande tänk:

IF Bn<>"" AND Nn="x" THEN B6 := "X" ELSE B6 := Summa(B2:B4)

Där n är en variabel från 2 till 4 (och B är ju då variabeln på andra ledden)

SirPeterMedlem sedan feb. 200115 571 inlägg
#5

Edit/ Jag tänkte lite fel så glöm detta.

DannyMedlem sedan juli 200412 913 inlägg
#6

{=OM((C2:C4<>"")*(N2:N4<>"X");SUMMA(C2:C4);"X")}

Den här matrisformeln är det närmsta jag kommit, problemet med den funkar tveksamt. Fattar inte hur man får dessa matrisformler att fungera som man vill!!

DannyMedlem sedan juli 200412 913 inlägg
#7

Nu har jag fått till det med nedanstående formel! Utan matris! Fast det är ett problem. Passa returnerar #SAKNAS! när inget värde alls hittas. Det ställer till det, jag håller på att bråka med det nu. OM(ÄRFEL(... ska nog fixa det, men VAR ska man sätta in det utan att krångla till det för mycket... kanske löser sig snart...

=OM(INDEX(C2:C4;PASSA("N";N2:N4;0))<>"";"X";SUMMA(C2:C4))

UrTristMedlem sedan juli 20087 inlägg
#8

Jag skulle göra så här:
=OM((PRODUKTSUMMA(--($N2:$N4="x");C2:C4)=SUMMA(C2:C4));SUMMA(C2:C4);"x")

Visserligen blir inte December samma som din skiss. Men det skyller jag på dig §jr

DannyMedlem sedan juli 200412 913 inlägg
#9

UrTrist! Jag älskar dig! Det där var väldigt fin lösning och det fungerar ju finfint! Dec blev visst fel där uppe ja.

Jag har hållt på med det här skiten till och från hela dagen, sista jag testade var detta, som inte heller funkade bra, märkte jag efter en stund:

=OM(PASSA("J";$M6:$M99;0)=PASSA(MAX(B6:B99);B6:B99;0);SUMMA(B6:B99);"X")

Tack så mycket!

DannyMedlem sedan juli 200412 913 inlägg
#10

Nu har jag kollat lite mer på det där, vad exakt gör de där dubbla minustecknena (--) framför första matrisen där?

UrTristMedlem sedan juli 20087 inlägg
#11

Danny skrev:

Nu har jag kollat lite mer på det där, vad exakt gör de där dubbla minustecknena (--) framför första matrisen där?

När parantesen ($N2:$N4="x") evalueras och villkoret stämmer så returneras "sant". "sant" är ju egentligen = 1 och "Falskt=0", men ibland fattar inte Excel det. De dubbla minustecknen är bara ett sätt att tvinga fram en liten beräkning och garantera att svaret blir en siffra.

Normalt sett skriver jag ($N2:$N4="x")*1 istället men de dubbla minustecknen är lite snyggare och bättre pedagogik (trodde jag i min enfald, men det är ärligt talat ganska svårbegripligt :x ).

******
Hur tusan stavas "evalueras"? Ähh, utvärderas eller beräknas är nog bättre.

DannyMedlem sedan juli 200412 913 inlägg
#12

aha, då var det som jag trodde, dubbel negation va!? Som icke icke, eller icke<>"" som jag skrev ovan :) jaja, dåså. *1 känner jag till, men det där var något nytt. Det behövdes ju också för på den formel jag ändrade i blev det bara x istället för summan om jag tog bort -- :)

tack igen

138 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)