
Sloučení dvou listů v Excelu?
Zdravím a prosím o radu.
V jednom sešitě mám dva listy.
Na prvním listu je v prvním sloupci číselný kód ve formátu "123 456 789" a dále je 14 sloupců s různými daty, ne všechny sloupce jsou vyplněny. Takovýchto řádků je cca 1500.
Na druhém listu je v prvním sloupci číselný kód ve formátu "123 456 789" a dále je 7 sloupců s různými daty, ne všechny sloupce jsou vyplněny. Takovýchto řádků je cca 15500.
Potřeboval bych vymyslet asi nějaké makro, které by umělo na třetí čistý list zkopírovat ten první list a doplnit za stávajících 15 sloupců těch 7 dalších z druhého listu - samozřejmě jen k těm příslušným kódům.
Našel by se někdo, kdo by takové makro (případně jiný postup) zvládl a podělil se tu o něj?
Děkuji
nepotrebuješ makro, využi funkciu vlookup.
Podľa kódu v prvom liste ti vyhľadá položku v druhom liste a z jej riadku ti vráti hodnotu z požadovaného stĺpca.
Na záver získané výsledky skopíruješ a prelepíš hodnotami, čím sa ti zo vzorcov stanú tvrdé hodnoty
Zkusil jsem SVYHLEDAT a mám problém.
Na listu A mám kód v A1, text v B1.
Na listu B mám kódy ve sloupci A a texty ve sloupcích B, C, D.
Potřeboval bych sestavit vzorec, který by udělal toto:
Na listu A si přečte kód v buňce A1, prohlédne si sloupec A na listu B, pokud najde shodu, zkopíruje zbytek příslušného řádku (buňky B, C, D) na list A do buněk C1, D1, E1.
Použil jsem =SVYHLEDAT(A1;'list B'!A1:A100;1) ale tím dosáhnu jen toho, že se mi na list A do sloupce C přenesou kódy z listu B ze sloupce A, ale ne zbytky řádků.
Snad je to srozumitelně...
Tak si tam těch vzorečků udělej víc. Příklad:
do C1: =SVYHLEDAT(A1;'list B'!A:Z;2)
do D1: =SVYHLEDAT(A1;'list B'!A:Z;3)
do E1: =SVYHLEDAT(A1;'list B'!A:Z;4)
do F1: =SVYHLEDAT(A1;'list B'!A:Z;5)
atd.
Jinak řečeno: jako druhý parametr si nastav věechny sloupce, z nichž potřebuješ data zkopírovat a dalším parametrem pak jen určuješ číslo sloupce, z nichř budeš data kopírovat.
díky
Jen upřesnění, kdyby to taky někdo hledal.
Je potřeba doplnit NEPRAVDA - výsledný vzorec tedy bude např. =SVYHLEDAT(A167;list2!A:H;2;NEPRAVDA)
Doplní se tedy jen ty řádky, kde se nalezne shodný kód. Ty řádky bez shody se nevyplní daty.
Bez parametru NEPRAVDA se do "prázdných" řádků bez shody zkopíroval poslední nalezený, což byla chyba a vznikaly duplicity...