|
Specielt opslag i matriceI artiklen Opslag via koordinater, beskæftiger jeg med med, hvordan man kan finde en værdi i en matrix på baggrund af række og kolonneoverskrifter.
Ved at indtaste fx B og 3 i de celler, som refereres i formlen =INDEKS(A1:D5;SAMMENLIGN(E2;A1:A5;0);SAMMENLIGN(E1;A1:D1;0)), altså E2 og E1 returneres værdien Hans. Temaet i denne artikel er en udvidelse af ovenstående. For det første befinder opslagsmatrixen sig i et andet ark, her kaldet "Opslag". Det er der i sig selv ikke noget svært i. Data i dette ark kunne se ud som følger:
Jeg vil nu gerne kunne indtaste en værdi mellem 1 og ... (lodret), idet alle værdier over 12 skal fortolkes som 12 og en værdi mellem 20 og 45 (værdier over 45 skal returnere en fejl) vandret og få returneret en værdi. Forskellen på denne opgave og opgaven ovenfor, ligger i, at jeg denne gang også gerne vil kunne indtaste værdier, der ikke findes, fx 32 og stadig få returneret en værdi efter princippet, 31 og 32 skal returnere værdien for 30 mens 33 og 34 skal returnere værdien for 35. 30 og 35 skal selvfølgelig returnere deres respektive værdier. En formel til dette forslag kunne se således ud =INDEKS(Opslag!A1:G14;SAMMENLIGN(LOPSLAG(B2;Opslag!A2:A14;1;SAND);Opslag!A2:A14;0);SAMMENLIGN((AFRUND(B3/5;0)*5);Opslag!B1:G1;1)) B2 og B3 er de celler i arket med formlen, hvor jeg indtaster de værdier, der skal bruges som opslagsværdier. |