< návrat zpět

MS Excel


Téma: Data z více listů do jednoho listu v souboru rss

Zaslal/a 24.8.2015 20:02

Zdravím,
potřebovala bych poradit, jak jednoduše v excelu nakopírovat data z 10 listů do prvního listu. Musí se na to použít makra nebo to lze i přes funkce? Na všech listech je stejná tabulka s různými daty a mají různé množství řádků. Moc děkuji.

Zaslat odpověď >

Strana:  « předchozí  1 2 3 4   další »
#026430
avatar
Ahoj, jen abych vysvětlila důvod, proč tonelze psát na jeden list - do toho souboru zapisuje 10 lidí najednou, vsichni zapisují ve stejnou chvíli (resp. během celého dne), soubor je sdílený.. Pokud by psali všichni na jeden list, tak by si to vzájemně přepisovali a navíc by to pro ně bylo dost nepřehledné.citovat
#026469
avatar
Elninoslov jsi jednička! Funguje to uplne vyborne, jeden list navic tam mam - s daty do tech rozeviracich seznamu, ale funguje to vyborne a nevsima si ho to :-)

Veliké díky 9citovat
#026508
elninoslov
Aby Vám to ignorovalo len jeden list tak tam je
If .Name <> "Spolu" Then
ale aby Vám to ignorovalo viac listov, treba ten riadok zmeniť na
If IsError(Application.Match(.Name, Array("Spolu", "Ďalší"), 0)) Then
Pričom do toho poľa Array("Spolu", "Ďalší")
pripíšete rovnakým spôsobom všetky, ktoré má ignorovať.

Všetky ostatné listy sú považované za dátové.citovat
#026512
avatar
Upraveno, díky moc :-)citovat
#026513
avatar
Prosím tě, elninoslov, ještě jsem se chtěla zeptat, lze to makro nějak jednoduše upravit, pokud by ty jednotlivé listy nebyli v jednom sešitu, ale uložené v jedné složce - tj. byly by tam zvlášť soubory (viz. příloha), aby se to zase daalo do nejakeho dalsiho souboru "spolu"?
Příloha: zip26513_data_vykazy.zip (45kB, staženo 58x)
citovat
#026518
elninoslov
No, mám toho veľa, ale tak chodím sem relaxovať, tak snáď sa bude dať. Každopádne, načítať množstvo dát z iných zošitov je násobne zložitejšie ako z rovnakého zošitu. To makro bude musieť vedieť aké mená listov má hľadať dopredu. Cez ExecuteEcxel4Makro checkneme či sa list nachádza v zošite, takže budeme vedieť už aj súbor aj list, vložíme teda vzorce na dolovanie dát. Ale ten menný zoznam musí byť dopredu známy. Nebudem to vysvetľovať celé, keď prídem domov a bude čas mrknem Vám na to.citovat
#026520
avatar
To by bylo úžasný. Přejmenovala jsem tedy listy(v priloze) tak, aby mohli zůstat stále takto pojmenované. Teď jich budu využívat méně, ale předpokládám, že pokud v té složce budou nakopírované ty listy a nebudou v nich data, tak by to neměl být problém, nebo ne? Moc děkuji
Příloha: zip26520_zam_01_15.zip (170kB, staženo 63x)
citovat
#026570
elninoslov
No urobil som Vám to s takou malou "berličkou" na zisťovanie počtu riadkov v zatvorených zošitoch. V zošite Spolu.xlsm nepožívajte bunku pod tlačítkom L1, počas importu sa tam vkladá vzorec na spočítanie použitých buniek v zatvorených zošitoch. V makre je konštanta MaxR, ktorá určuje v koľkých riadkoch sa bude testovať počet použitých riadkov. Je tam nastavené 1000, ak hrozí, že túto hodnotu niekedy prekročíte, nastavte podľa potreby, ale nie zbrklo nastaviť 1 000 000, pretože to bude vážne spomaľovať.

Je tam urobená aj kontrola na prázdnu bunku alebo hodnotu 0, pretože štandardne sa pri čítaní z iného zošita dostane 0 aj z prázdnej bunky, takže to máte ošetrené.

Dávajte si pozor na to, aby ste mala súbory s datami pomenované nasledovne:
-názov súboru "01_Smutny.xlsx". Musí tam byť podčiarknik, "_", ktorý určuje, že za ním začína meno.
-týmto menom musí byť pomenovaný v zošite list s datami.

Je jedno koľko budete mať v zložke súborov, je jedno či tam budú aj iné ako Excel súbory, je jedno, či bude zožit Spolu.xlsm a dátové zošity spolu, a je jedno či budete používať XLS, XLSX alebo XLSM, a je jedno koľko bude v ktorom zošite listov.

Teraz je to nastavené tak, že v adresári kde sa práve nachádza súbor Spolu.xlsm má byť podadresár "Prac", v ktorom sú dátové súbory. To si ale kľudne zmente v riadku
Cesta = .Path & "\Prac\"
kde .Path dáva hodnotu adresy kde sa práve nachádzate so súborom Spolu.xlsm, ďalej je to jasné (dodržte lomítka).

Je to viacmenej ošetrené na chyby, či už na 0 riadkov v dátovom liste, neexistenciu listu, chybu pri vkladaní vzorcov, neexistenciu "_" v názve dátového listu, či na ignoráciu spracovania listu s názvom Spolu.xlsm (ak budú spolu). Ak Vám to dá hlášku "Chyba !", vedzte, že operácia nebola dokončená, aj keď tam máte už nejaké data, to odkiaľ posledné importované data pochádzajú, Vás môže upozorniť na to, kde je asi chyba.

EDIT: Ešte som zabudol, že čo sa rýchlosti týka, tak u mňa celá operácia na 1736 riadkoch po 11-ich stĺpcoch z týchto 15 súborov trvá odhadom asi 0,3 sek.
Příloha: rar26570_z-viacerych-zositov-do-jedneho.rar (226kB, staženo 223x)
citovat
#026588
avatar
To je skvělý, moc děkuji! Funguje to výborně a rychle. 9citovat
#048903
avatar
Dobrý den,
mám podobný problém a prosím o pomoc:
Chci získat přehled o údajích léků, které jsou na jednotlivých listech, do listu PŘEHLED. Představuji si to tak, že na list PŘEHLED budou zapsány jednotlivé údaje makrem ze všech listů, kterých bude víc než 50.
Příkládám přílohu jako příklad. Děkuji všem za pomoc.
Příloha: zip48903_seznamleku.zip (15kB, staženo 22x)
citovat

Strana:  « předchozí  1 2 3 4   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje