< návrat zpět

MS Excel


Téma: Data z více soborů ve více složkách pomocí VBA rss

Zaslal/a 14.8.2023 12:00

Dobrý den,
potřebuji pomoci. Mám více stejných xlsm soborů, jen s různými názvy. Všechny soubory mají list s názvem "data", na kterém jsou vyplněny sloupce 1-110 a počet vyplněných řádků může být různý. První řádek je hlavička.

Potřebuji na "jeden" klik, načíst data z tohoto listu u všech souborů, tak, aby se soubory neotevíraly, a také, aby to fungovalo i v případě, že některý soubor je otevřen jiným uživatelem.

Cílové umístění by bylo na Listu "DATA_ALL" v souboru "SOUHRN.xlsm" , kde opět první řádek je hlavička a následně by se data načítala pod sebe. Ideálně pokud by v prvním sloupci bylo označení i soboru, ze kterého data pocházejí (tak jak to je např. u PowerQuery).

Pomohli byste mi s tím?
Moc děkuji.

Pozn.: PowerQuery jsem zkoušela, ale dost mi to házelo chyby při následném doplnění zdrojových sobourů, proto hledám cestu přes VBA.

Zaslat odpověď >

#055308
Lugr
To by neměl být problém. Problémy jsou jiné. První, že jsi nám nedala přílohu, aby jsme se si to nemuseli cucat z prstu a druhý, že jsem na to měl čas celý víkendu a teď už je pozdě. Ale určitě to sem mrskni, buď ti pomůže někdo jiný a nebo já až na to budu mít čas. 1citovat
#055309
elninoslov
Čo myslíte tým, že PQ hádzalo chyby pri doplnení súborov? To predsa nemôže byť problém pre PQ, dáte iba Obnoviť Tabuľku. Ibaže by "zmena" znamenalo niečo iné ako pridanie dát do súborov, pridanie súborov s rovnakou štruktúrov a pod. Napr. zmena hlavičiek, názvu listu, počtu listov (aj iné názvy), nesúrodý počet stĺpcov, neexistujúce hodnoty, prázdne tabuľky a pod.

Pre makro to tiež nebude problém (bez otvárania). Stačí použiť, ako to ja nazývam, "dolovacie vzorce". Hromadná príprava a vloženie poľa vzorcov na bunky a prevod na hodnoty. Je potrebné vedieť, podľa ktorého stĺpca sa určuje počet riadkov, a či sú medzi dátami v tom stĺpci medzery a ich formát. Rozsah dát sa potom (bez otvorenia) vypočítava iným vzorcom.

Teda --> príloha.citovat
#055310
avatar
Přikládám tedy přílohu "Příklad", ve které je několik listů.
Listy SM, JM, VČ a DATA_ALL.
Napadla mě to totiž dvě řešení:
1) Jelikož jsou jednotlivé excely uloženy ve více složkách, možná by bylo přehlednější mít i data z těchto složek samostatně a pak je seskupit dohromady do listu "DATA_ALL".
Pak by platilo následující: ...do listu SM se budou natahovat data ze ze složky např. C:\Formuláře\SM , která obsahuje jenom excely ...zde pro ilustraci excel SM1.xlsm a excel SM2.xlsm - data se budou ukládat pod sebe, první řádek je hlavička, makro se spustí při otevření souboru "Příklad".
Podobně pro list JM...do listu JM se budou natahovat data ze ze složky např. C:\Formuláře\JM , která obsahuje jenom excely ...zde pro ilustraci excel JM1.xlsm a excel JM2.xlsm - data se budou ukládat pod sebe, první řádek je hlavička, makro se spustí při otevření souboru "Příklad".
A stejně pak pro list VČ.

2) data by se rovnou ukládala ze všech složek do listu DATA_ALL pod sebe bez mezikroku samostatných listů.

Vždy bude vyplněný sloupec B, podle něj tedy lze počítat řádky. Formáty jednotlivých sloupců jsem vepsala do tabulky, snad to pomůže.
Formát tabulky ve zdrojových listech je totožný, listy se ve zdrojových souborech jmenují "data".
Příloha: zip55310_priklad.zip (46kB, staženo 12x)
citovat
#055311
elninoslov
Ja som si pre Vás nachystal zatiaľ 3 verzie.
- PQ so zavislosťou na stĺpcoch
- PQ nezavislé na stĺpcoch
- VBA zavislé na počte stĺpcov

VBA verziu nezávislú na počte a názvich stĺpcov som začal rozpracovácať.

VBA je rýchle, ale podľa mňa je pre Vás aj na pochopenie lepšie PQ. Keď prídem, pošlem, a uvidíte, že zložitosť PQ kódu je 20% oproti VBA. Aj keď to je zasa rýchlejšie.

No uvudíme.citovat
#055312
avatar
moc děkuji :)citovat
#055315
elninoslov
Tak včera som sa k tomu nedostal vôbec. Dnes som prispôsobil iba PQ. Prispôsobovať to moje makro sa mi dnes už asi nechce...
Příloha: zip55315_formulare-pq.zip (164kB, staženo 6x)
citovat
#055318
avatar

elninoslov napsal/a:

Tak včera som sa k tomu nedostal vôbec. Dnes som prispôsobil iba PQ. Prispôsobovať to moje makro sa mi dnes už asi nechce...Příloha: 55315_formulare-pq.zip (164kB, staženo 2x)


Moc děkuji :) Projdu si to.citovat

Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse

Vynásobit hodnoty kurzem - Power Query

Alfan • 26.4. 7:56

Relativní cesta - zdroje Power Query

Alfan • 26.4. 7:54

Vynásobit hodnoty kurzem - Power Query

elninoslov • 26.4. 7:54

Vynásobit hodnoty kurzem - Power Query

lubo • 25.4. 19:18

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 15:12

Relativní cesta - zdroje Power Query

Alfan • 25.4. 15:08

Relativní cesta - zdroje Power Query

elninoslov • 25.4. 14:21