03. november 2011 - 14:57Der er
6 kommentarer og 1 løsning
SUM.HVIS alt for mange hvis'er...
Hej. Jeg kan ikke finde ud af denne :-( Måske skal der bruges VBA - men selv det virker uoverskueligt..
Input: 40.000 linier med emner, der er indleveret til reparation Hver række har bl.a. følgende oplysninger (i hver sin kolonne): Indleveringsdato Type (f.eks. LDT 3805, PPT 8866, MC659B - i alt 28 forskellige) Udleveringsdato
ØNSKET output: En tabel med rækker: Alle dage siden 2007 Kolonner: De 28 forskellige typer
Altså en matrix på 28x ca. 1800
Værdierne i matrix'en skal "simpelt hen" bare være antal på "reparationslageret", hvor begge datoer (ind og ud) tæller med som "på lager"
F.eks. bliver der af LDT 3806'ere indleveret én 15-01-07, der bliver udleveret igen 18-01-07 og en anden af samme type bliver indleveret 16-01-07 og udleveret 19-01-07.
I dette eksempel skal der altså ud for LDT 3806 stå 15-01-07: 1 16-01-07: 2 17-01-07: 2 18-01-07: 2 19-01-07: 1 20-01-07: 0
For en given kolonne (en af de 28), kan du bruge funktionen TÆL.HVISER. For hver dato (række) angiver du fire betingelser (Er det den rigtige type? Er indleveringsdato lig med eller lavere end dags dato? Er udleveringsdato lig med eller højere end dags dato? Er udleveringsdato forskellig fra nul/tom celle?
Og så kopierer du den ovenstående formel 50.400 gange. Cirka.
Det bliver dog noget nemmere (og mindre gumpetungt), hvis man laver opslag, i stedet oversigt.
Lav én celle med TÆL.HVISER funktionen, og brug tre celler til indtastning af indleveringsdato, type og udleveringsdato. Så kan du ved at udfylde de tre, lave et opslag i dine data - i stedet for at lave 50.000 funktioner, eller VBA-programmering. Det giver ikke helt det samme overblik, men det er til gengæld til at arbejde med.
Bemærk i øvrigt at TÆL.HVISER funktionen kun findes i Excel 2007 og frem (dvs. ikke i 2003)
Mange tak. Det var præcis den formel, jeg ville forvente at få! Og nu forstår jeg bedre hvorfor jeg ikke kunne finde den i Excel, for jeg har ikke Excel 2007 :-(
Er der nogen omvej til samme funktion i 2003?
Jeg kan godt følge dig i at lave et opslag, så arket bliver lidt hurtigere... - så det tror jeg, at jeg vil bruge (hvis altså det kan lade sig gøre i 2003)
Hej dkhanknu: Kan du uddybe? Jeg kan slet ikke finde den løsning med pivottabel - men det lyder meget spændende.
Jeg har nu fundet en løsning efter inspiration fra rasta (en søgning på "tæl.hvisser" her på eksperten: =SUMPRODUKT((ARK!$E$2:$E$5000<=17-01-07)*(ARK!$P$2:$P$5000>=17-01-07)*(ARK!$G$2:$G$5000="LDT 3806"))
Det virker vist...
Synes godt om
Slettet bruger
04. november 2011 - 12:54#5
Hvis du kan og vil sende (eventuelt en lille del af) filen der illustrerer opgaven, så skal jeg gerne forsøge at hjælpe. Send i givet fald til: hans.knudsensnabelsmail.tele.dk
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.