PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelEn formel som returnerar, 1a positiva värdet från markerade celler?En formel som returnerar, 1a positiva värdet från markerade celler?
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2012-10-06 08:25
 

Jag vill plocka värden från ett område enligt beskrivning nedan ...

  1. En formel som returnerar, 1a positiva värdet från en viss rad, tex R1, dock endast markerade celler, från AM till BE, enligt bild)
  2. En formel som returnerar, 2a positiva värdet från en viss rad, tex R2, dock endast  markerade celler, från AM till BE, enligt bild)
  3. En formel som returnerar, 3e positiva värdet från en viss rad, tex R3, dock endast  markerade celler, från AM till BE, enligt bild) ... osv ...

Är detta möjligt?

 

mvh / Slim

Nytt inlägg
 2012-10-30 16:28
 

Hej!

Japp det är möjligt.

Antag att du i cellerna A1:I1 har värdena

3 6 -3 2 4 2 5 3 7

Med hjälp av =PASSA(5;A1:I1;0) får du värdet 7 eftersom värde nummer 7 uppfyller villkoret att vara en femma. PASSA(5;A1:I1;0) betyder alltså att vi letar efter 5 i A1:I1 och att vi skall ha en exakt match framgår av den sista nollan i PASSA(5;A1:I1;0). Den sista nollan kan i en sorterad lista vara större eller mindre än, men av ditt exempel framgår att siffrorna inte är sorterade så vi har ingen hjälp av att ändra den sista siffran till -1 (mindre än) eller 1 (större än).

Nästa steg är därför att arbeta med en matrisfunktion, det är en slags funktion som arbetar med hela områden cell för cell. Vad vi vill är att jämföra varje enskilt värde med 0 för att se om värdet är större än 0. En sådan jämförelse returnerar sant eller falskt.

En sådan funktion kan skrivas =PASSA(SANT;A1:I1>5;0) och den returnerar en 2:a. Men vad gör den och hur gör man för att alls få den att fungerar. Ja för att den alls skall fungera kan man inte bara trycka enter när man skrivit den. Man skall trycka [Ctr} + [Shift] + [Enter] och då blir det en matrisfunktion av det hela, vilket vi ser av att den är omgiven av { och } i formelfältet.

Men vad gör den?

Jo först så undersöker den vilka celler som är större än 5 "A1:I1>5". Eftersom det är en matrisfunktion så returnerar den jämförelsen en ny matris som består av Falskt Sant Falskt Falskt Falskt Falskt Falskt Falskt Sant eftersom bara andra och sista värdet är över 5.

Passa jämför sedan SANT, det vill säga letar efter sant i matrisen ovan. Nummer två är den första träffen och därför returneras en 2:a.

Funktionen Index() fungerar så att den letar i en matris efter värdet på en viss plats i matrisen. Index(matris,5) ger alltså femte värdet i matrisen. I exemplet ovan är det 4.

Men vi kan stoppa in vårt passa på denna punkt: =INDEX(A1:I1;PASSA(SANT;A1:I1>5;0)) Glöm bara inte att trycka Ctrl Shift och Enter så fungerar det!

mvh

 

 

 

 


Kihlman

Excelforum drivs av Excelspecialisten som bedriver utveckling av program, utbildning samt support och hjälp i Excel och VBA.

www.excelspecialisten.se

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelEn formel som returnerar, 1a positiva värdet från markerade celler?En formel som returnerar, 1a positiva värdet från markerade celler?

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter