ERLANDSEN DATA CONSULTING Excel & VBA Tips   Information in English / Informasjon på engelsk

Disse websidene oppdateres ikke lengre og er kun tilgjengelig for historikken sin skyld.

Klikk her for å gå til den oppdaterte informasjonen.

Slå opp verdier i tabeller

Ofte har du egne lister eller tabeller i et regneark som inneholder grunnlagsinformasjon. Denne informasjonen kan f. eks. være en tabell med varenummer, vare-navn og vare-pris. Hvis du har et regneark som benyttes til å lage fakturaer, kan det være greit å kunne få Excel til å fylle inn opplysninger om varenavn og varepris hvis du selv oppgir varenummeret.

Det finnes flere oppslagsfunksjoner i Excel. Følgende funksjoner brukes ofte til å returnere verdier fra egne lister og tabeller :

FINN.RAD(søkeverdi;matrise;kolonneindeks;sortert)

Denne funksjonen leter etter en angitt verdi nedover radene i første kolonne innenfor et celle-område som inneholder en tabell.
søkeverdi : det man ønsker å finne i tabellen, kan være tekst, tall eller en celle-referanse.
matrise : det celleområdet tabellen befinner seg i, eller det egen-definerte navnet brukeren har gitt celle-området.
kolonneindeks : den kolonnen i tabellen man vil returnere verdien fra.
sortert : valgfri logisk verdi, SANN eller USANN. Argumentet angir om den første kolonnen i matrisen er sortert eller ikke. Hvis argumentet er utelatt settes verdien til SANN.

NB! Argumentet sortert gjelder kun for Excel 5.0 eller nyere versjoner. Eldre versjoner forutsetter at verdiene i første kolonne er sortert.

FINN.KOLONNE(søkeverdi;matrise;radindeks;sortert)

Denne funksjonen leter etter en angitt verdi bortover kolonnene i første rad innenfor et celle-område som inneholder en tabell.
søkeverdi : det man ønsker å finne i tabellen, kan være tekst, tall eller en celle-referanse.
matrise : det celleområdet tabellen befinner seg i, eller det egen-definerte navnet brukeren har gitt celle-området.
radindeks : den raden i tabellen man vil returnere verdien fra.
sortert : valgfri logisk verdi, SANN eller USANN. Argumentet angir om den første raden i matrisen er sortert eller ikke. Hvis argumentet er utelatt settes verdien til SANN.

NB! Argumentet sortert gjelder kun for Excel 5.0 eller nyere versjoner. Eldre versjoner forutsetter at verdiene i første rad er sortert.

INDEKS(matrise; radindeks;kolonneindeks)

Denne funksjonen returnerer verdien fra en celle i en matrise som har de angitte rad- og kolonneindekser.

Eksempel :
Anta at du har følgende tabell i et regneark :

Funksjon : Returnerer :
=FINN.RAD(200;A2:C6;2) Appelsiner
=FINN.RAD(400;A2:C6;3) 12
=FINN.RAD(350;A2:C6;2) Bananer

Hvis søkeverdien ikke finnes, blir den høyeste verdien som er mindre enn søkeverdien benyttet. Dette kan være nyttig i de tilfellene hvor du ønsker å slå opp verdier innenfor et intervall, for eksempel en liste over rabatter avhengig av forskjellige kjøpesummer.

=FINN.RAD(350;A2:C6;2;USANN) vil returnere feilverdien #I/T
Hvis du setter argumentet sortert til USANN og søkeverdien ikke finnes, returneres feilmeldingen #I/T (ikke tilgjengelig).

=FINN.KOLONNE("varenavn";A1:C6;3;USANN) vil returnere Appelsiner

=FINN.KOLONNE("varenavn";A1:C6;10;USANN) vil returnere feilverdien #REF!
I dette tilfellet er radreferansen for stor, matrisen består kun av 6 rader. Det er ikke mulig å returnere verdier utenfor den angitte matrisen.

=INDEKS(A2:C6;2;3) vil returnere 15

Funksjonene FINN.RAD() og FINN.KOLONNE() kan kombineres med funksjonene RAD() eller KOLONNE() for å spare mange manuelle korrigeringer av rad- eller kolonnereferanser. Disse to funksjonene returnerer henholdsvis radnummer og kolonnenummer til den cellen de benyttes i. Eventuelt kan man benytte en annen cellereferanse innenfor parentesene hvis man ikke vil referere til den cellen funksjonen skrives i.

Eksempel :
Aktiver celle D5 og skriver følgende formel :
=FINN.RAD($A$1;$F$10:$O$100;KOLONNE()-2;USANN)
Denne formelen kan nå kopieres fra celle D5 bortover til og med celle L5. Nå vil du få returnert alle verdier fra tabellen i cellene F10:O100 (unntatt søke-verdiene i første kolonne i tabellen) vedrørende den søkeverdien man angir i celle A1.

 

Dokumentet er sist oppdatert 2000-02-05 12:42:38      Utskriftsvennlig versjon

Brukerkommentarer:
Gunders fra jg_tobru@hotmail.com skrev (2005-06-10 14:04:40 CET):
Noen som vet om dette går ann?
Man har en liste med overskrift f.eks i E1 står det BIL, og i F1 står det FLY. Fra E2 og nedover står det bildeler ,f.eks Dekk, Felg, Ratt osv. I F2 og nedover står det flydeler f.eks Vinge, Turbin, osv.
Det jeg vil er at når jeg i B1 skriver Dekk, skal det i A1 automatisk fylles inn BIL. Det samme hvis jeg i B1 skriver Vinge, skal det i A1 fylles inn FLY.

Går det ann? Send meg gjerne en mail med svar. jg_tobru@hotmail.com
Ole P. fra Norge skrev (2005-05-23 09:00:37 CET):
Re: Hvorfor ikke ?
Fordi FINN.RAD-funksjonen leter etter en verdi i den første kolonnen i A2:C6 (varenummer), og vil derfor ikke finne et varenummer som er lik den høyeste vareprisen (17) som MAKSA-funksjonen returnerer.
Roger fra rogerknudsen@home.no skrev (2005-05-21 18:04:53 CET):
Hvorfor ikke ?
EKSEMPEL =FINN.RAD(200;A2:C6;2) returnerer Appelsiner

men hvorfor kan man ikke benytte følgende kombinasjon

=FINN.RAD(MAKSA(C2:C6);A2:C6;2) for å returnere Bananer
Ole P. fra Norway skrev (2005-03-15 08:58:37 CET):
Re: Oppslag
For å få til å lagre en statisk verdi kan du ikke benytte deg av en formel. Du kan benytte en makroprosedyre som f.eks. ved hjelp av en formel som vist ovenfor henter en verdi og lagrer verdien i en angitt celle. Denne verdien vil være statisk helt til den overskrives på nytt av makroen eller manuelt av brukeren.
Jan fra Etne skrev (2005-03-15 00:59:27 CET):
Oppslag
Heisan.
Har du peiling på hvordan gjøre statisk oppslag?
F.eks. I celle A1 har vi verdi 100 kr. Jeg gjør et oppslag mot denne cellen og vil at denne verdien skal lagres i celle B1 og ikke endres senere om celle A1 blir endret til 120 kr.

 

Erlandsen Data Consulting     http://www.erlandsendata.no/   
Excel & VBA Tips   Copyright ©1999-2024    Ole P. Erlandsen   All rights reserved
E-post kontaktadresse