
Automatické dosazení do tabulky - excel
Zdravím!
Řeším celkem banální problém a nemohu tomu přijít na kloub...
Mám zadány hodnoty(jsou to velikosti oblečení) a potřebuji je automaticky dosadit do tabulky s tím, že hodnoty (vstupní) si budu aktualizovat...
Přidávám xls soubor, který obsahuje vstupní data, která se mohou lišit (občas některý řádek nebude nebo jich bude celkově více)
Důležité je B3-Bx a D3-Dx
Napravo je tabulka velikostí, do které potřebuji dosadit hodnoty z D3-Dx na základě velikostí.
Příklad: B3 je 6@53@42@170(veliksot 42/170, poslední 2 čísla se zavináči určují velikost) (celkem 0 ks) čili v tabulce napravo potřebuji hodnotu 0 (ks) do místa 42/170 (dle @42@170)... Navíc se občas může stát, že vstupní hodnota bude vypadat takto "6@54@54@170" čili, že se budou dvě čísla opakovat a já potřebuji tedy vždy jen poslední dvě hodnoty z toho řádku...
Rozsah bude vždy od 42/164-194 až po 64/164-194 ... některé vstupní řádky tedy nebudou, jindy budou všechny... Potřebuji poradit, jak zadat excelu, aby hledal pouze @42@170 a do tabulky na příslušné místo vepsal počet kusů... Už nad tím maturuju asi 2 hodiny a nejsem schopen se k něčemu dopracovat. Stydím se...
Snad jsem vše vyjádřil jasně, kdyby byly nějaké nejasnosti, ihned upřesním
Jste mou poslední nadějí
Děkuji za případnou pomoc!
Bartex
Můj pokus pomocí maticového vzorce: viz soubor.
Zkontroluj si relevantnost výsledků.
PS: Při roztahování vzorce je potřeba si pohrát s absolutní adresací na "záhlaví tabulky"
Funguje to bezvadně... zkoušel jsem i přidat/ubrat řádek a vše funguje...
Abych přiznal barvu, vůbec netuším, jak to funguje. Nicméně nerozumím tomu, co bych roztahoval? Jen do tohohle sloupce vložím nové hodnoty a dostanu je v tabulce.. Nic víc nepotřebuju. Žádnou další tabulku vytvářet nebudu - je to naprosto dostačující
Měl sem za to, že tohle je pouze vzorová tabulka (ukázka).
Tím se vše vyřešilo
..Jo a
Podívej se na "vyhodnocení vzorce" a bude Ti to jasné, nehledej v tom žádnou vědu. Pokud by si chtěl tak vzorec vysvětlím.
Koukám na to a nic.. asi to bez nějakého vysvětlení "naživo" nemá ani smysl popisovat

Nicméně... dá se to použít i když se změní cifry? Dejme tomu, že místo posledních čísel(vstupní hodnoty) bude třeba 5@50@39@176 ?
Že bych si přepsal tu tabulku na požadovaná čísla, aby to odpovídalo? Asi to budu nakonec muset pochopit, co?
Budeš tedy měnit délku textového řetězce?
Myslím, že by se to nemělo stát... rozhodně ne v blízké budoucnosti
Kdyby ano, co by bylo třeba udělat?
Pokud by se změnili všechny hodnoty na stejnou délku to je:
6@53@46@188
6@53@48@176
nebo
6@53@483@176
6@53@480@170
tak by stačilo napevno zněnit hodnoty ve funkci ČÁST
ČÁST($B$3:$B$59;6;2) to je číslo počátečního znaku a počet znaků.
Pokud by sloupec ze kterého se čerpají data do tabulky obsahoval "směs" hodnot:
6@53@46@188
6@53@48@176
6@53@483@176
6@53@480@170
6@53@48@1766
6@53@48@1708
Bude potřeba vytvořit nový vzorec, který by bral v potaz měnící se počet číslic mezi znakem @.
Do funkce ČÁST by se místo fixních hodnot 6 a 2 vložil další vzorec, který by vypočítával pořadí počátečního znaku atd.
Doufám, že sem to popsal alespoň trochu srozumitelně
Zdravím,
tak mám zde aktualizaci
Může nastat ještě tato varianta...
0@02@37@170@3
S tím, že ta trojka na konci pro mne není důležitá a co se předchozích čísel týče, tak jsou od 37-46 (čili 10 namísto 12)
Objevil jsem další nedostatek
Když bude těch řádků méně, než 59 (třeba 15), tak mi to vyhodí chybové hlášení ve všech tabulkách 
Myslíš, že bys to mohl ještě do toho tvého souboru upravit? Myslím tím, že bys udělal ještě kopii pro tuhle variantu - budou tedy dva soubory - jeden pro "37-46" - viz příloha a druhý původní uravený ve smyslu, že nebude důležitý počet vložených řádků. Další příloha - kde nastala chyba.
Mnohokráté děkuji
Bartex
Kombinace obou tabulek.
V tabulce se vyskytují jak hodnoty 0@56@54@182 tak i 0@02@42@170@3
Hned jak budu mít k dispozici data, na kterých bych to otestoval, dám vědět. Prozatím to vypadá skvěle. Mockrát děkuji!
Jsem nesmírně vděčný...
Bartex
Zdravím,
Tak jsem se dnes dostal k testování a mám ještě jednu prosbu. Vzorec je konstruován – z toho, co chápu, na 59 řádků. Potřeboval bych, aby byl na 500, klidně i 1000. Protože pokud je řádků více než 59, už to nebere… Aspoň jsem tak vypozoroval. Zkoušel jsem ve vzorci ““““=SOUČIN.SKALÁRNÍ((IFERROR(HODNOTA(ČÁST($B$3:$B $59;6;2))=$G$2;0))*(IFERROR(HODNOTA(ČÁST($B$3:$B$5 9;9;3))=$F3;0))*($D$3:$D$59))““““
Přepsat hodnoty 59 na 200 (například) a vůbec nic to nezměnilo… A to jsem měl za to, že ta padesátdevítka určuje, kolik řádků to má sledovat… Mohu tedy ještě poprosit o toto drobné doladění?
Více než 1000 řádků snad nikdy mít nebudu…
Přikládám soubory - zvlášť různé varianty vstupních dat, kde je pozorovatelné, že tabulka se vyplní jen z části.
Poprosil bych, aby zůstaly dva soubory... je to tak plně vyhovující z důvodu rozdílných cílových tabulek...
Děkuji, Bartex
Máš pravdu
Stačí přepsat všechny 59-ky na 200, 500, 1000 kolik chceš. Podmínkou ukončení zápisu vzorce je stisk trojkombinace
CTRL+SHIFT+ENTER protože se jedná o vzorec maticový.
Tady to máš.
I když věřím, že by si to zvládnul sám. Schválně si to zkus
Aha! Odklepl jsem to enterem!
Děkuji za informaci a úpravu... S vědomostí trojhmatu bych to zvládl, i přesto děkuji za rychlou odpověď a ujasnění.
Hezký zbytek večera,
Bartex