Avatar billede nlr2000 Nybegynder
28. januar 2005 - 14:35 Der er 13 kommentarer og
2 løsninger

Forkert formel. Korriger!

Kan det passe, at Excel kun kan håndtere et lille antal hvis'er i en formel? (Point gives ikke for "ja" eller "nej"!)

Følgende formel fungerer:
=HVIS(D305="";HVIS(D278="";HVIS(D251="";HVIS(D224="";HVIS(D197="";HVIS(D170="";HVIS(D143="";HVIS(D89="";"";D89);D143);D170);D197);D224);D251);D278);D305)
Men hvis jeg lægger en celle mere ind, giver det fejl. Dette dur således ikke:
=HVIS(D305="";HVIS(D278="";HVIS(D251="";HVIS(D224="";HVIS(D197="";HVIS(D170="";HVIS(D143="";HVIS(D116="";HVIS(D89="";"";D89);D116);D143);D170);D197);D224);D251);D278);D305)

Formlen er naturligvis et tegn på mine manglende programmeringsviden!

Pointen med formlen vises i dette eksempel:
jan 12
feb 15
mar 49
april 12
maj 5
juni 45
juli 55
august
september
etc...

Den skal fange det sidste tal. (Her 55)

Nogen der kan lave en bedre formel end ovenstående? Det er sikkert simpelt.... (der er kun 12 perioder)

Tak
Avatar billede lillebror Nybegynder
28. januar 2005 - 14:41 #1
Excel har en begrænsning på nestede HVIS funktioner, mener grænsen ligger omkring en 7-8 HVIS'er
Avatar billede lillebror Nybegynder
28. januar 2005 - 14:43 #2
En sådan ting kunne nemt laves i VBA, men Excel har sine begrænsninger med de indbyggede funktioner!
Men du kender sikkert ikke til VBA, når du forsøger at gøre det med HVIS funktionen
Avatar billede jkrons Professor
28. januar 2005 - 14:44 #3
Ja, det kan desværre godt passe. Excel kan kun håndtere op til 7 HVIS'er i samem formel. Det nemmeste er nok at bruge en opslagsfunktion i stedet, men jeg kan ikke lige overskue, hvordan dine data er skruet sammen.
Avatar billede lillebror Nybegynder
28. januar 2005 - 14:45 #4
Opslagsfunktionen duer vel kun, hvis man ved hvad den skal lede efter?
Avatar billede mugs Novice
28. januar 2005 - 14:45 #5
7 hvis er korrekt, og dog findes der en work around. Søg selv i ekspertens vidensbase.
Avatar billede jkrons Professor
28. januar 2005 - 14:49 #6
mugs-> Hvis det er workarouden med at addere HVIS'erne i stedet, virker den så vidt jeg kan se ikke i dette tilfælde.
Avatar billede nlr2000 Nybegynder
28. januar 2005 - 14:56 #7
Jeg tækte nok, der var en limit.
Pointene går selvfølgelig til den, som kan lave en formlen (ja, helst en formel - men ellers en vba-kode), som kan ramme plet. (i eksemplet foroven er det 55.)
Avatar billede lillebror Nybegynder
28. januar 2005 - 14:57 #8
Du kan selvfølgelig mellemregne ude i nogle andre celler, og derved gemme resultatet af de første 7 HVIS'er. og arbejde videre i en ny celle, det skulle kunne lade sig gøre.
Find en celle, lav de første 6 hvis'er. I cellen nedenunder laver du de næste 6 hvis'er.
Dernæst går du til den celle, hvor du vil have resultatet, og siger, at hvis første celle inde holder et tal, og den anden er tom, så tag første celle. Hvis første celle ikke er tom og anden celle heller ikke er det, så tag anden celle :)
Avatar billede jkrons Professor
28. januar 2005 - 14:58 #9
Forstrår jeg dig rigtigt, at det du ønsker at finde, er den sidste måned, der indeholder et tal, eller rette det pågældende tal?
Avatar billede jkrons Professor
28. januar 2005 - 14:59 #10
lillebrors forslag om at dele op i to og bruge hjælpeceller, er nok den hurtigste vej frem.
Avatar billede lillebror Nybegynder
28. januar 2005 - 15:07 #11
En celle indeholder:
=HVIS(B1>0;HVIS(B2>0;HVIS(B3>0;HVIS(B4>0;HVIS(B5>0;HVIS(B6>0;B6;B5);B4);B3);B2);B1);B1)
Cellen nedenunder indeholder:
=HVIS(B7>0;HVIS(B8>0;HVIS(B9>0;HVIS(B10>0;HVIS(B11>0;HVIS(B12>0;B12;B11);B10);B9);B8);B7);B7)

Cellen hvor resultatet skal være indeholder:
=HVIS(D2>0;D2;D1)
Avatar billede lillebror Nybegynder
28. januar 2005 - 15:13 #12
Er det VBA der frister:

Public Sub findVærdi()
    Dim x As Range, i As Integer
   
    For Each x In Range("B1:B12")
        If x > 0 Then
            i = x
        End If
    Next
   
    Range("B13") = i
End Sub

Range i for loopen er værdierne udfor dine måneder, mens B13 er der hvor resultatet skal stå
Avatar billede nlr2000 Nybegynder
28. januar 2005 - 15:14 #13
Hmm... hvorfor tænkte jeg ikke på det?
Svaret er accepteret!

Selvom pointene er givet, ville jeg dog meget gerne se et svar uden mellemberegninger.
Avatar billede lillebror Nybegynder
28. januar 2005 - 15:20 #14
Hvis du tit har brug for at benytte excel til ting og sager, der kræver meget komplicerede excel funktioner, så vil jeg da anbefale dig at studere VBA nærmere. Det er en pragtfuld måde at udvide excel på :)
Avatar billede nlr2000 Nybegynder
28. januar 2005 - 15:29 #15
Det er jeg netop begyndt på lillebror. Som du kan se, har jeg skrevet flere spørgsmål de sidste par dage. Da de er simple, har jeg lagt dem her i regneark og ikke i vba.
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