23. november 2005 - 20:11Der er
21 kommentarer og 1 løsning
Avanceret hvis funktion
Jeg arbejder med et regneark hvor vi arbejder i med møde tider, ekstra tid, osv.
Jeg har følgende oplysninger stårende i kollonner (bogstaverne er for at give en ide om kollongerne)
A Roster In B Roster Out
C Variance + In D Variance + Out
E Variance - In F Variance - Out
Eksempel A Roster in: 15:00 B Roster out: 20:00
C Variance + in: 12:00 D Variance + out: 15:00
E Variance - in: 14:00 F Variance - out:15:00
Det jeg nu godt vil have er 2 kolloner, den ene der fortæller møde tidspunktet, og en der fortæller slut tidspunktet.
I tilfældet ville det være Mødetid: 12:00 Sluttid: 14:00
Jeg har siddet og brugt et par dage nu på at finde frem til løsningen, men ak og ve - jeg kan ikke få det til at virke, nogle der kan give mig formlerne.
Jeg kan naturligvis sende regnarket så I bedre kan studerer hvordan det virkelig ser ud.
Hmm og endnu en tilføjelse... skulle vist have taget mig noget mere tid til at udforme spørgsmålet ordentligt. Variance + kan jo stå på begge sider, altså kan være en forlængelse om morgenen eller om aften. Der kan også blot stå 00:00 så skal formlen blot vise det oprindelige møde tidspunkt.
Jeg kan ikke lige overskue dit problem, men du skal være velkommen til at sende mig en kopi af dit regneark, så vil jeg gerne kikke på det. Send det til:
Hvis mødetid altid er laveste tid, kan du i den relevante kolonne bruge følgende formel: =MIN(A1:F1) Hvis sluttid tilsvarende er højeste tid, kan du bruge formlen =MAKS(A1:F1)
Hej B_Hansen. Det var faktisk et rigtig godt bud du kom med, problemet er at der kan forekomme nul værdier, altså hvis der ikke er nogle ændringer, og så vil exel tro at den skal tage nul værdien.
Hvis der ikke er indtastet noget i feltet, medtages det ikke i formlerne. Problemet kan være, hvis det er tale om beregninger, eller data, der hentes fra andre regneark.
Hvis der er tale om at hente data fra andre ark eller steder, kan dette håndteres, hvis de indkapsles i en =HVIS().
b_hansen -> har du modtaget et eksempel på bsr0809's regneark?
Jeg har selv modtaget det og forsøgt mig frem. Sådan som jeg ser det, så kommer jeg ikke frem til noget brugbart, idét der tilsyneladende er modstridende formler i det jeg forsøger mig med!
Har du et bud på en formel - hvis du altså har set regnearket?
macho> ja, jeg har modtaget arket. I første omgang har jeg blot koncentreret mig om starttiden, og da er jeg kommet frem til denne formel: =HVIS(MIN(C5:H5)=0;MINDSTE(C5:H5;TÆL.HVIS(C5:H5;0)+1);MINDSTE(C5:H5;1))
Formlen undersøger først, om det mindste starttidspunkt er nul. Hvis det er tilfældet, tæller den antallet af nulforekomster, og tager derefter den næstmindste værdi. Hvis der ikke er nulforekomster, tager den blot den mindste startværdi.
Det passer ikke helt med alle de opstillede værdier, men til gengæld giver det de rigtige svar i eksemplet. *S*
Som sluttidspunkt har jeg i første omgang blot foreslået, at den tager det højeste tidspunkt, altså =MAKS(C5:H5). Men den skal jo nok rafineres lidt.
b_hansen -> jeg kan godt se, at du er kommet nærmere end mig (vil slet ikke vise min formel her), men der er stadig fejl i formlen - i hvert fald, hvis det bsr0809 har skrevet som retningslinjer i arket skal opfyldes. Bl.a. skriver han:
quote Hvis Variance- in er lig med Roster in og Variance- out er lig med roster out skriv 0 unquote
Ergo bliver resultatet i f.eks. celle "I8" forkert. bsr0809 har selv markeret cellen "G8" med fed skrift og ergo skulle jeg mene, at det er den han vil have som resultat, men ifølge hans retningslinjer skal det jo være "0" i stedet for, idet min quote herover bliver opfyldt! Har forsøgt mig med din formel men tilføjet et enkelt HVIS-argument:
Det er korrekt, at jeg ikke tager højde for denne betingelse. Men det skyldes, at jeg i regnearket kan se, at det gøres der heller ikke her. Derfor har jeg valgt at se bort fra den.
Måske vi kan forvente, at bsr0809 kommer med lidt mere forklaring til regnearket; nærmere bestemt en forklaring på den modstridende vejledning kontra celler med fed skrift. Før kan jeg i hvert fald ikke komme videre indtil da.
Nu har jeg ændret lidt på formlen, så den kommer til at se sådan ud: =HVIS(G5=C5;H5;HVIS(MIN(C5:H5)=0;MINDSTE(C5:H5;TÆL.HVIS(C5:H5;0)+1);MINDSTE(C5:H5;1)))
Hej Macho - undskyld jeg ikke har fået skrevet de sidte par dage. Men B_hansen har virkelig været god, og fået det til at fungerer så godt det nu var muligt, så jeg må give point til ham for det.
Hmm - ja altså det er jo stadigvæk ikke helt færdig endnu. Jeg har stadigvæk lidt problemer med hvis en er på arbejde til efter midnat, men det arbejder jeg lidt på i skriven stund men formlerne kom til at se således ud:
Okay, men det viser jo bare, at jeg så ikke har forstået, hvorfor du har denne sætning med som én af dine betingelser:
"Hvis Variance- in er lig med Roster in og Variance- out er lig med roster out skriv 0"
Bruger du =HVIS(G5=C5;H5;HVIS(MIN(C5:H5)=0;MINDSTE(C5:H5;TÆL.HVIS(C5:H5;0)+1);MINDSTE(C5:H5;1)))
vil du aldrig få resultatet "0" i f.eks. "I8" i dit regneark. Bruger du derimod denne i stedet: =HVIS(OG(G5=C5;H5=D5);"00:00";HVIS(MIN(C5:H5)=0;MINDSTE(C5:H5;TÆL.HVIS(C5:H5;0)+1);MINDSTE(C5:H5;1)))
får du nul i de celler, hvor du har beskrevet, at du vil have nul. Men jeg tænker, at du måske bare har givet lidt forkerte oplysninger i arket ;-)
Nuvel, jeg bakker ud - jeg ved, at b_hansen er mere skrap til disse formler!
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.