Jämföra celler i excel

Trädvy Permalänk
Medlem
Registrerad
Apr 2014

Jämföra celler i excel

Hej, jag håller på skriver ett examensarbete och behöver lite hjälp med en jämförelse i excel.

Jag har fem celler i ett blad som ska matchas med fem celler i ett annat blad och om dessa matchas så vill jag skriva ut text som står i en annan cell på samma rad.

Om cell A2 matchas med cell G2 vill jag att det undersöks om cell B2 och C2 är lika med eller större än cell H2 och I2 samt om D2 och E2 är lika med eller mindre än cell J2 och K2, gör de det så vill jag veta vad det står i cell L2 och att detta skrivs ut i cell F2.

Bild: http://i.imgur.com/PmNYqsd.png

Det gäller drygt 15000 rader och jag insåg att det tar lite lång tid manuellt.

Är det någon hjälpsam själ där ute som kan hjälpa mig?

Trädvy Permalänk
Moderator
Plats
Linköping
Registrerad
Apr 2004

Börja med att skriva ekvationen för cell F2 och använd sedan "fyll ned" (eller dubbelklicka på fyrkanten i cellens nedre högra hörn) för att behandla nedanstående rader.
En start är

=om(A2=G2;"lika";"ej lika")

som skriver "lika" i F2 om A2 är samma som G2 och "ej lika" annars. "lika" kan du sedan till exempel byta ut mot ett test för att undersöka något annat, till exempel

=om(A2=G2;om(B2=H2;"lika2";"ej lika2");"ej lika")

som skriver "ej lika" om A2 inte är samma som G2 eller annars "lika2" (om B2 = H2) eller "ej lika2" (i övriga fall).

Trädvy Permalänk
Medlem
Plats
Romelanda
Registrerad
Nov 2009

Lite som Elgot är inne på, men du får göra en längre nestlad if-sats (förhoppningsvis använder du inte svenska, det blir mycket lättare att googla efter hjälp då).
and() alternativt sum() kanske behövs med beroende på hur du menar med "om cell B2 och C2 är lika med eller större än cell H2 och I2"

"When I get sad, I stop being sad and be awsome instead, true story."

Trädvy Permalänk
Medlem
Registrerad
Apr 2014

Tack för det snabba svaret!

För att förtydliga vill jag dock veta om raden A2:E2 matchar någon motsvarande rad i hela G2:K15000 och skriva ut. Sen vill jag veta om A3:E3 matchar någon i G2:K15000 o.s.v.
Att matcha rad för rad hade jag klurat ut men tyvärr så hjälper det mig inte.

Trädvy Permalänk
Medlem
Plats
Romelanda
Registrerad
Nov 2009
Skrivet av miiilo:

Tack för det snabba svaret!

För att förtydliga vill jag dock veta om raden A2:E2 matchar någon motsvarande rad i hela G2:K15000 och skriva ut. Sen vill jag veta om A3:E3 matchar någon i G2:K15000 o.s.v.
Att matcha rad för rad hade jag klurat ut men tyvärr så hjälper det mig inte.

Om du använder samma enhet kan du summera dem varför sig och matcha det.
Men då får du bara ut den första raden som matchar.

"When I get sad, I stop being sad and be awsome instead, true story."

Trädvy Permalänk
Medlem
Registrerad
Apr 2014
Skrivet av Json_81:

Om du använder samma enhet kan du summera dem varför sig och matcha det.
Men då får du bara ut den första raden som matchar.

Nu hängde jag inte riktigt med på hur du menar med 'samma enhet'. Ett förtydligande av datan: B2 och C2 är alltså "från 121km och 650 meter" D2 och E2 är "till 125km och 131m". Alltså kan jag ju i praktiken lägga ihop dom till två celler istället för fyra. Det jag misslyckas med är att jag inte ens förstår hur jag ska börja 'söka' i datan. Jag vet ju inte vilken rad de matchande cellerna kommer finnas och vet bara hur jag matchar med en känd rad.

Det borde bara finnas en som matchar eftersom A:E är mindre delar av större sträckor G:K. Genom att kolla värdet på den större sträckan så får jag reda på motsvarande värde för den mindre delen vilket är den uppgift jag behöver.

Trädvy Permalänk
Moderator
Plats
Linköping
Registrerad
Apr 2004
Skrivet av miiilo:

Tack för det snabba svaret!

För att förtydliga vill jag dock veta om raden A2:E2 matchar någon motsvarande rad i hela G2:K15000 och skriva ut. Sen vill jag veta om A3:E3 matchar någon i G2:K15000 o.s.v.
Att matcha rad för rad hade jag klurat ut men tyvärr så hjälper det mig inte.

Du skulle kunna använda en matrisformel kanske:

=INDEX(L$2:L$15000;PASSA(1;(G$2:G$15000=A2)*(H$2:H$15000>=B2)*(I$2:I$15000>=C2)*(J$2:J$15000<=D2)*(K$2:K$15000<=E2);0))

Avsluta inmatningen med ctrl+skift+enter.

Trädvy Permalänk
Medlem
Plats
Romelanda
Registrerad
Nov 2009
Skrivet av miiilo:

Nu hängde jag inte riktigt med på hur du menar med 'samma enhet'. Ett förtydligande av datan: B2 och C2 är alltså "från 121km och 650 meter" D2 och E2 är "till 125km och 131m". Alltså kan jag ju i praktiken lägga ihop dom till två celler istället för fyra. Det jag misslyckas med är att jag inte ens förstår hur jag ska börja 'söka' i datan. Jag vet ju inte vilken rad de matchande cellerna kommer finnas och vet bara hur jag matchar med en känd rad.

Det borde bara finnas en som matchar eftersom A:E är mindre delar av större sträckor G:K. Genom att kolla värdet på den större sträckan så får jag reda på motsvarande värde för den mindre delen vilket är den uppgift jag behöver.

km och m är två olika enheter.
Så du behöver skriva 125km och 0,131km eller 125000m och 131m om du ska summera dem.
=match(tal;kolumn;x) returnerar rad med matchande värde.

x:
MATCH_TYPE BEHAVIOR
1 or omitted MATCH finds the largest value that is less than or equal to lookup_value. The values in the lookup_array argument must be placed in ascending order, for example: ...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE.
0 MATCH finds the first value that is exactly equal to lookup_value. The values in the lookup_array argument can be in any order.
-1 MATCH finds the smallest value that is greater than or equal to lookup_value. The values in the lookup_array argument must be placed in descending order, for example: TRUE, FALSE, Z-A, ...2, 1, 0, -1, -2, ..., and so on.

"When I get sad, I stop being sad and be awsome instead, true story."