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

 
ForumForumDiskussionerDiskussionerExcelExcelHitta värde i cell från annan tabellHitta värde i cell från annan tabell
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2021-11-11 07:43
 

Jag skulle vilja hitta det orange värdet i B-kolumnen och returnera det i C-kolumnen. 
Enda sättet som jag kan komma på (då det är olika positioner, inget gemensamt) är att hitta det från en annan tabell, G-kolumnen. 
Jag skulle alltså vilja söka i B-kolumnen och hitta ett värde från G-kolumnen som returneras i C-kolumnen. 

Nästa scenario som är möjligtvis lite lättare men jag kommer inte hela vägen fram är nedan.
Jag skulle från C-kolumnen vilja extrahera ett leverantörsnummer, dessa börjar samtliga med "S". Det jag vill hitta finns i kolumn F (endast för att demonstrera) i kolumn E har jag skrivit en formeln och i ni ser resultatet. Alla är rätt utom en rödmarkerad cell (detta pga att en leverantör har ett "S" i sitt fakturanummer som kommer tidigare än leverantörs ID, kan även förekomma tvärtom). Möjligt att man måste använda sig av samma lösning som ovan. 

 

Stort tack på förhand!
 

Nytt inlägg
 2021-11-11 11:31
 

Hej hej

Om du har 365 så fungerar nedan lösning, annars så borde sammanfoga också fungera, men inte helt säker på att den kan hantera matriser, du får testa.

Nedan formel lägger du i cell C2, därefter drar nedåt

=SAMMAN(OMFEL((--(HITTA($G$2:$G$6;B2)>1))*$G$2:$G$6;""))

Förklaring:

HITTA($G$2:$G$6;B2)>)

Denna utvärderar B2 mot dina levnr. Om levnummer finns i B2 så returneras Sant, annars skapas ett fel.

HITTA($G$2:$G$6;B2)>)*$G$2:$G$61)

Denna multiplicerar resultatet med värdet sant. Så att vi nu har ett leverantörsnummer och en massa felvärden.

OMFEL

tar bort värdefelen och ersätter med ingenting

Samman:

slår ihop matrisen till en textsträng.

Dessvärre fungerar inte metoden om du inte har siffror som levnr, därför fungerar inte metoden för din nästa uppgift, utan då behöver vi krångla till det med radnummer och därefter använda det för att hämta värdet med index

=index(G$1:G$6;SAMMAN(OMFEL((--(HITTA($G$2:$G$6;B2)>1))*rad($G$2:$G$6);""))

Du får själv ändra de utpekade matriserna för uppgift2, tänk på att matrisen för ditt index måste börja på rad 1 då det är riktiga radnummer vi returnerar och att indexet också måste utgå från det.

Mvh

Christian

 

 

Nytt inlägg
 2021-11-12 15:32
 

 Hej!

Fantastiskt Christian!
Imponerad!

Har dock lite följdfrågor.

Bilden nedan i C2: =INDEX(G$1:G$30;SAMMAN(OMFEL((--(HITTA($G$2:$G30;B2)>1))*RAD($G$2:$G30);"")))

Här hittar den fel leverantör

I C4 hittar den inget alls, inte heller någon av de andra. Vad beror det på?
=INDEX(G$1:G$30;SAMMAN(OMFEL((--(HITTA($G$2:$G31;B3)>1))*RAD($G$2:$G31);"")))

Jag klistrade in excel nedan ifall det är enklare för dig!

Date Description Leverantör Formeln Värde önskas att hitta
2021-09-30 PO Invoice 63799 PO3024994 S02511 Test123 S02230 S02511 S02511
2021-09-30 PO Invoice 63799 PO3024994 S02511 test123 #REFERENS! S02511 S02511
2021-09-30 PO Invoice 788032 PO3025539 SDK020 test123 #REFERENS! SDK020 SDK020
2021-09-30 PO Invoice 788032 PO3025539 SDK020 Excel 321 #REFERENS! SDK020 SDk020
2021-09-30 PO Invoice 788032 PO3025539 SDK020 Excel999 #REFERENS! SDK020 SDK020
2021-09-30 PO Invoice 211005742 PO3025122 S01930 Leverantör999 #REFERENS! S01930 S01930
2021-09-30 PO Invoice 211005027 PO3025566 SDK024 LeverantörFake #REFERENS! SDK024 SDK024
2021-09-30 PO Invoice 211005027 PO3025566 SDK024 Odense Marcipan A/S DK #REFERENS! SDK024 SDK024
2021-09-30 PR SI+2103440 PO3023178 SNL018 #REFERENS! SI+210 SNL018
2021-09-30 PR 666 PO3025886 S03770 #REFERENS! S03770 S03770
2021-09-30 PR 666 PO3025275 S03770 #REFERENS! S03770 S03770

 

Sista frågan:

Den första formlen fungerade fint förutom på rad 6 & 7 (rad 8 fanns inte under "Leverantörer" förrän nu i efterhand för jag ville testa att lägga till och utöka i D-kolumnen) - beror det på att där står en "1" i kolumn-C?

För när jag ändrade till "0" i kolumn-D så gick det bra. Är det så formlen ska vara eller ser du några bekymmer?

 

Stort tack igen!

Nytt inlägg
 2021-11-15 19:03
 
 Ändrad av Christian  på 2021-11-15 19:04:58

 Hej igen

=INDEX(G$1:G$30;SAMMAN(OMFEL((--(HITTA($G$2:$G30;B2)>1))*RAD($G$2:$G30);"")))

G30 saknar rätt lås, det ska stå g$30 inte $g30, notera att du har samma mönster på båda. 

Att du får fel leverantör är märkligt, har du 365? Annars måste du slå in funktionen med ctrl + shift + enter då detta är en matrisformel.

Gällande nästa del så behöver du nog ändra formeln som du fick. Till att istället för att jämföra med >1, ändra till >0, då Hitta resulterar i 1 om den sökelementet hittas på position 1.

HITTA($G$2:$G31;B3)>1) till:

HITTA($G$2:$G$31;B3)>0)

Såg du att låset saknades även här?

samma förändring kan du förresten göra på formeln med index i också. Får du inte det att fungera så kan du skicka din fil till christian.hagglund@xls.se så hjälper jag dig.

mvh

Christian

Nytt inlägg
 2021-11-25 06:37
 

 Hej!

Fantastiskt! Det löste problemet. Detta var till stor hjälp!
Mitt enda bekymmer nu är att i textsträngen fanns där t.ex "random" text som matchade någon av leverantörerna (oturligt nog) i tabellen. Men jag kommer nog inte närmare än så här.

Tack igen!

MVH 
Niclas

Nytt inlägg
 2021-12-01 11:25
 

Det mesta brukar att gå att lösa, men i vissa fall krävs programmering, och i sällsynta fall, manuell hantering. 

/c

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelHitta värde i cell från annan tabellHitta värde i cell från annan tabell

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