Avatar billede lineriber Praktikant
10. oktober 2011 - 10:45 Der er 5 kommentarer og
1 løsning

SUMPRODUCT returnerer #VALUE

Hej Eksperter

Jeg bruger EXCEL 2007, engelsk version.

Jeg er flittig bruger af SUMPRODUCT formlen (som erstatning for VLOOKUP) til opslag af værdier i en matrix hvor der skal valideres på flere forskellige kriterier.
Jeg er dog rendt ind i problemer hvor mine sumproduct formler returnerer værdien #VALUE. Jeg er overbevist om at det er fordi af der er nogen af cellerne der læses som blanke og dermed ikke er et tal.

Her en forklaring af hvordan situationen opstår:
Jeg har i et regneark (kaldes Regneark1)en matrix med en række per materialenummer (kolonne A) og fabrik (kolonne B) og en kolonne for hver uge (Uge 40= kolonne C, uge 41 = kolonne D osv).
Denne matrix er skabt på baggrund af SUMPRODUCT formler, som sætter blank i de felter hvor der ikke findes en værdi (fx =IF($F32="";"";SUMPRODUCT(($F32=Transfered!$F$5:$F$131)*(AB$3=Transfered!$J$2:$AM$2)*(Transfered!$J$5:$AM$131))))

Denne matrix kopierer jeg og indsætter som VÆRDI i et andet regneark (kaldes Regneark2).

I Regneark2 i en anden fane, laver jeg en tabel der med SUMPRODUCT formler henfører til matrixen der er indsat som værdi. Alligevel returnerer mine SUMPRODUCT formler værdien #VALUE.
Hvis jeg manuelt går in og markere hvert enkelt felt der er blankt og trykker "Delete", så kommer SUMPRODUCT formlen til at virke. Derfor tror jeg at det er de blanke værdier der driller.

Hvordan kan jeg undgå dette problem?? Enten ved at kunne tage højde for det i SUMPRODUCT formlen, eller ved at kunne gøre noget når jeg indsætter matrixen som værdier i Regneark2.

mvh
Line
Avatar billede Slettet bruger
10. oktober 2011 - 11:23 #1
Prøv at ændre din formel:

IF($F32="";"";SUMPRODUCT(($F32=Transfered!$F$5:$F$131)*(AB$3=Transfered!$J$2:$AM$2)*(Transfered!$J$5:$AM$131))))
til

IF($F32="";0;SUMPRODUCT(($F32=Transfered!$F$5:$F$131)*(AB$3=Transfered!$J$2:$AM$2)*(Transfered!$J$5:$AM$131))))

(hvis 0-værdier generer dig som kan "fjerne dem", for eksempel ved hjælp af betinget formatering.

Hans
Avatar billede lineriber Praktikant
10. oktober 2011 - 11:39 #2
Hej dkhanknu

Tak for svar, men den er jeg godt med på.
Det er bare fordi at jeg gerne vil bibeholde de blanke felter ud for de rækker hvor der ikke findes nogen værdi i kolonnen med materialenr (kolonne F). Dermed kommer mit layout nemlig til at se ud som nedenfor, hvor alle linier med materialenr. har en værdi - også selvom at det er 0 - mens alle linier uden materialenr. er blanke:

Materialenr. (F)    Uge 40     
AB10048954          10
AB10035790            0

AB10032471          5
AB10031666          0
AB10041030          2

AB10040925          15

AB10050841          20
AB10038942          2
AB10040926          7


Men nu kan jeg da godt se at jeg også bare kan løse det via betinget formattering, hvor tallene laves med hvid skrift når kolonnen for materialenummeret er blankt.

Men kan man ikke på nogen måde løse problemet med at SUMPRODUCT formlen ikke kan lide blanke felter??
Avatar billede Slettet bruger
10. oktober 2011 - 12:30 #3
Du kan forsøge med en konstruktion i stil med:

=SUMPRODUCT(--(A1=område1);--(A2=område2);resultatområde)
Avatar billede lineriber Praktikant
11. oktober 2011 - 08:35 #4
Perfekt - det virkede :-)

Dkhanknu hvad er forskellen på at bruge ; og * ?
og hvad er det der sker når man sætter "--" foran array1 og array2 i dit eksempel?

Smider du lige et svar?
Avatar billede Slettet bruger
11. oktober 2011 - 10:27 #5
Semikolon i stedet for gangetegn bevirker at tekst ("") behandles som 0. Gangetegn giver fejl fordi Excel ikke accepterer at man forsøger at gange noget med noget andet som er tekst. Jeg foretrækker "gangetegn-metoden" fordi jeg ønsker at blive advaret, hvis der er en fejl fremfor bare "i stilhed" at beregne et resultat, som kan være forkert. Men det er selvsagt en smags sag.

-- (Dobbelt unær minus). Det første minus ændrer en boolesk værdi (SAND/FALSK) til et tal, (-1 eller 0 )Det andet minus ændrer fortegnet igen (til 1 eller 0). På engelsk kaldes det coercion. Ved den anden metode sker denne coercion via gangetegnet.

Hans
Avatar billede lineriber Praktikant
11. oktober 2011 - 11:26 #6
Tusinde tak for den meget fine forklaring og løsning på mit problem :-)

Mvh
Line
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester