Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  7 1491
Hei,

Har en funksjon jeg sliter med å få til i excel. Oppgaven er som følger.

I kolonne A har jeg en tallrekke nedover ( fra A1 til A10) f.eks fra 0 til 1000.
Tallene er ikke i stigende eller synkende rekkefølge, men tilfeldig.
I celle B1 har jeg et tall, f.eks 800.
Så ønsker jeg å vite hvor mange celler nedover i kolonne A jeg må før jeg treffer en verdi som er større eller lik B1.
Hvis f.eks cell A5 inneholder tallet 850 ( som da blir den femte cellen ) ønsker jeg tallet 5 i C1

Har prøvd med ulike funksjoner som ANTALL, HVIS, INDEX, SAMMENLIGNE etc, men klarer ikke å få det til. Det nærmeste jeg kom var SAMMENLIGNE men siden tallene ikke er i stigende eller synkende rekkefølge funker det ikke.

Håper på hjelp fra forumet.

Mvh
Steinar
Slang sammen noe kjapt, du klarer sikkert å få det mer elegant hvis du legger litt mer tid i det.

Tallene i kolonne B angir hvor mange celler fra toppen man er. I kolonne C utføres det en test som gir FALSE hvis tallet i A kolonnen er under 800, hvis det er større får man ut tallet fra B kolonnen på samme rad.
I cellen man ønsker svaret brukes MIN funksjonen på hele kolonne C.
https://www.dropbox.com/s/94mcdpuy31k659j/Eksempel.xlsx
Du kan også bruke en HVIS funksjon dersom du ikke vil ha så mange hjelpeceller.

=HVIS(B1<=A1;1;HVIS(B1<=A2;2;HVIS(B1<=A3;3;HVIS(B1<=A4;4;HVI S(B5<=A5;5;"Ingen celler er større")))))

Denne setningen er for fem celler i kolonne A, men det er bare og utvide den til så mange celler du trenger.

Sitat av H20 Vis innlegg
Du kan også bruke en HVIS funksjon dersom du ikke vil ha så mange hjelpeceller.

=HVIS(B1<=A1;1;HVIS(B1<=A2;2;HVIS(B1<=A3;3;HVIS(B1<=A4;4;HVI S(B5<=A5;5;"Ingen celler er større")))))

Denne setningen er for fem celler i kolonne A, men det er bare og utvide den til så mange celler du trenger.
Vis hele sitatet...
=HVIS(B1<=A1;"1";HVIS(B1<=A2;"2";HVIS(B1<=A3;"3";HVIS(B1<=A4 ;"4";HVIS(B1<=A5;"5";"Ingen celler er større")))))

Denne formelen fungerer.
Sist endret av H20; 12. januar 2014 kl. 17:18.
Hvis du prøver

Kode

=VLOOKUP(B1;A1:A10;1)+1
Så finner du index på første forekomst som er større.

Foresten, hvis du treffer på samme verdi som du har skrevet inn så får man verdien til svar. For å få indeksen så kan du prøve denne if varianten:

Kode

=IF(VLOOKUP(B1;A1:A10;1)=B1;VLOOKUP(B1-1;A1:A10;1)+1;VLOOKUP(B1;A1:A10;1)+1)
Trådstarter
8 0
Hei,

Takk for raske svar...

Løsningen til STRUTSEFAR virker men bare for en rad - skulle hatt samme funksjon på hver rad nedover......

Løsningen til LoOzR får jeg ikke til nå virke ( returnerer ikke det antall celler jeg skal telle). Har norsk EXCEL og bruker FINN.RAD ( kan det være fordi verdiene jeg skal søke ikke er i stigende rekkefølge...)

Løsningen til H2O ser ut til å virke men blir veldig mye å skrive inn når jeg har flere hundre rader.....

...noen forbedringer
Jeg la ikke merke til at du trengte å bruke den over flere rader.
Da tror jeg det letteste blir å bruke en egen funksjon hvis du ikke får løsningen til LoOzR til å fungere (det gjorde ikke jeg).

Jeg har skrevet en enkel funksjon til deg som gjør det du vil. Det kan imidlertid tenkes at den blir noe treg ved et stort antall rader da jeg bare testet opp til 100.

Kode

Function antCeller(r, verdi)
Dim index As Integer
index = 1

For Each cell In r
If cell.Value >= verdi Then
antCeller = index
Exit For
Else
index = index + 1
End If
Next cell

End Function
For å legge inn funksjonen trykk Alt + f11 for å åpne VBA vinduet. Deretter velger du insert module og limer inn koden ovenfor.

Du kan nå bruke funksjonen i en celle i arbeidsarket for eksempel slik: antCeller(A1:A10;800). Dette vil søke i cellene A1 til A10 og returnere hvor langt ned man må før man finner en verdi større eller lik 800. Finnes ikke verdien returneres 0.
Trådstarter
8 0
.....YES...... Der var det på plass. Supert og tusen takk....

Steinar
Trådstarter
8 0
...hmmm......virker ikke på openoffice.......