Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Excel: funkce vyhledat, aby souhlasily hodnoty ze dvou sloupců

Zdravím,
nějak jsem se zamotal, nejspíš to bude jednoduché, ale já to nejsem schopen vyřešit. Mám tabulku, kde jsou ve sloupci A variabilní symboly, ve sloupci B čí je to faktura, ve sloupci C je částka. Já bych potřeboval doplnit do jiné tabulky částku, v případě že souhlasí variabilní symbol a zároveň dodavatel.

Příklad zdrojové tabulky:

12022 Lojza 10000
12022 Pepa 20000
22022 Lojza 15000
22022 Pepa 25000

Pokud potřebuji vyhledat částku Pepy za fakturu 22022, tak jsem nahraný, protože SVYHLEDAT ve sloupci A najde nejdříve 22022 Lojzy, ve sloupci B se zastaví na 12022. Není na to nějaká fce?

Je mi jasné, že by šlo spojit A a B třeba do sloupce E a vyhledávat v něm, ale to by mi komplikovalo další zpracování, celý úkol je podstatně složitější.

Předem díky za jakékoliv nápady,
nofu

Řešení:

alebo toto:
https://sk.excelideas.net/13276640-how-to-lookup-value-with-multiple-criteria-in-excel

samozrejme sú tam koniny vyplývajúce zo strojového prekladu, takže miesto ZÁPAS má byť MATCH a namiesto čiarok bodkočiarky
Takže podstatný vzorec (zredukovaný o jeden argument) by vyzeral takto:
=INDEX(C1:C4;MATCH(1;INDEX((E1=A1:A4)*(F1= B1:B4);0;1);0))
v českej verzii:
=INDEX(C1:C4;POZVYHLEDAT(1;INDEX((E1=A1:A4)*(F1= B1:B4);0;1);0))
pričom hľadaný variabilný symbol by bol v bunke E1 a hľadané meno v bunke F1

Pozor, v prípade, že sa v tabuľke nachádza viac zhodných kombinácií var.s.-meno, tak vzorec vracia prvý nájdený výsledok (prvý vyhovujúci riadok).
V tom prípade by bolo možné napr zadávať ďalší rozlišujúci údaj v ďalšom stĺpci, napr dátum a potom analogicky rozšíriť vzorec o ďalšie kritérium (možno rozširovať o ľubovoľný počet kritérií)
Podstata je v tom, že výsledkom súčinu kritérií =1 len v riadku, kde súhlasia všetky podmienky

Předmět Autor Datum
Mrkni sem - https://office.lasakovi.com/excel/funkce-vyhledavaci/SVYHLEDAT-INDEX-POSUN-vice-vyhledav…
Zdenál 01.09.2022 18:44
Zdenál
alebo toto: https://sk.excelideas.net/13276640-how-to-lookup-value-with-multiple-criteria-in-excel…
robert13 01.09.2022 19:55
robert13
Pěkně chlapi, díky! V pondělí se v tom pohrabu, takhle to půjde. Pěkný víkend, nofu
nofu 02.09.2022 15:13
nofu
Ještě jednou díky chlapi, trochu jsem se s tím pral, ale nakonec jsem zvítězil. Nejdříve jsem naapli…
nofu 15.09.2022 18:59
nofu
Takže můžeš kliknout na odkaz Vyřešené.....
host 15.09.2022 19:47
host
Aha, sorry, jasné. Myslel jsem, že se to označí jako vyřešené stiknutím Přijmout :-[ nofu
nofu 15.09.2022 22:20
nofu
Soubor s pětatřiceti tisíci řádky? A dostane se na limit 2GB RAM pro 32bitové aplikace? To zavání ho…
Zdenál 16.09.2022 09:21
Zdenál
Kdyby 2GB, vyžere všech 16GB a nakonec shodí, asi kvůli nedostatku sdílené RAM, grafiku, po nějakém… poslední
nofu 16.09.2022 17:58
nofu

alebo toto:
https://sk.excelideas.net/13276640-how-to-lookup-value-with-multiple-criteria-in-excel

samozrejme sú tam koniny vyplývajúce zo strojového prekladu, takže miesto ZÁPAS má byť MATCH a namiesto čiarok bodkočiarky
Takže podstatný vzorec (zredukovaný o jeden argument) by vyzeral takto:
=INDEX(C1:C4;MATCH(1;INDEX((E1=A1:A4)*(F1= B1:B4);0;1);0))
v českej verzii:
=INDEX(C1:C4;POZVYHLEDAT(1;INDEX((E1=A1:A4)*(F1= B1:B4);0;1);0))
pričom hľadaný variabilný symbol by bol v bunke E1 a hľadané meno v bunke F1

Pozor, v prípade, že sa v tabuľke nachádza viac zhodných kombinácií var.s.-meno, tak vzorec vracia prvý nájdený výsledok (prvý vyhovujúci riadok).
V tom prípade by bolo možné napr zadávať ďalší rozlišujúci údaj v ďalšom stĺpci, napr dátum a potom analogicky rozšíriť vzorec o ďalšie kritérium (možno rozširovať o ľubovoľný počet kritérií)
Podstata je v tom, že výsledkom súčinu kritérií =1 len v riadku, kde súhlasia všetky podmienky

Ještě jednou díky chlapi, trochu jsem se s tím pral, ale nakonec jsem zvítězil. Nejdříve jsem naaplikoval řešení co poslal @Zdenál, ale nad 35k řádky to bylo tragicky pomalé a ještě k tomu mi to shazovalo počítač. Nakonec jsem to kvůli výkonu předělal dle instrukcí od @robert13, sice to počítač ještě občas shodí, ale většinou jen dojde RAM a padne excel.

Takže kdyby se někdo rozhodoval jak na to a měl hodně dat, tak určitě řešení od @robert13! Sice je složitější na pochopení, ale je mnohem pružnější.

Díky!
nofu

Kdyby 2GB, vyžere všech 16GB a nakonec shodí, asi kvůli nedostatku sdílené RAM, grafiku, po nějakém čase zamrzne celý comp. Vypadá to na bug excelu vs schránka, jelikož se to stávalo poměrně často při vkládání třeba i jen jedné kopírované buňky (tři znaky) a následném přepnutí na jiný List. Při prostém přepsání těch znaků se to nikdy nestalo. Také se to nikdy nestalo, když jsem vložil a pak zmačkl Escape a až následně přepnul na jiný List. Zajímavý byl postup, excel zamrznul, vytížil procesor na +-50% a začal vyžírat RAM, do jedné minuty vyžral celých 100%.

Zpět do poradny Odpovědět na původní otázku Nahoru