< návrat zpět

MS Excel


Téma: Kopírování dynamických tabulek rss

Zaslal/a 5.4.2013 8:42

Dobrý den,
chtěl jsem se zeptat zda je možné kopírovat (přenášet) tabulky z více sešitů (ty se průběžně aktualizují) jen do jednoho (slouží pro celkový přehled)?

Předem moc děkuji za odpověď.

stop Uzamčeno - nelze přidávat nové příspěvky.

#012711
Opičák
Jedna z možností jak získat data z jednoho souboru do druhého. Je potřeba samozřejmě upravit dle svých požadavků a cest.

Sub ReferToExcel()
Dim xlApp As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim x As Long, y As Long

Set xlApp = New Excel.Application
Set wb = xlApp.Workbooks.Open("C:\dokumenty_moje\pokus.xlsm")
Set ws = wb.Sheets("List1")

x = 5
y = 10

Rem --- načtené udaje budou ze sl.10 a řádku 5 Listu1 souboru pokus.xlsm ---
MsgBox "Row 5, Col 10 value=" & ws.Cells(x, y).Value
wb.Close False
Rem Quit Excel
xlApp.Quit
Set xlApp = Nothing
Set wb = Nothing
Set ws = Nothing
End Sub
citovat
#012712
avatar
Ahoj a děkuji za rychlou odpověď.
Bohužel mi tento kód nefunguje a myslím, že se jedná jen o přenos jedné buňky, to lze i odkazem ne?
Já potřebuji kopírovat stejné tabulky z více sešitů do jednoho, kde bude jedna sjednocená a budou se v ní aktualizovat data dle vyplňování dílčích tabulek.citovat
#012713
Opičák
Je to jen ukázka jak napsat kod a jak tahat data ze "zavřeného" sešitu, je funkční. Asi jsi nenapsal nějaký svůj soubor "pokus" a neupravil cestu k souboru v kódu.
Set wb = xlApp.Workbooks.Open("C:\dokumenty_moje\pokus.xlsm")

Odkazem to samozřejmě jde, ale musíš mít sešit, ze kterého taháš data otevřený.
Pokud se tahají data z několika souborů stále ze stejného místa (není podmínkou), tak není problém.
Dej sem příklad zdrojových sešitů a cílového, kod upravím a jistě se tu objeví i jiné varianty.citovat
#012714
Opičák
Řešilo se to tady:
http://wall.cz/index.php?m=topic&id=11684#post-11707citovat
#012715
avatar
Já to pochopil, děkuji jsi hodný.

Tak já to napíšu konkrétně.

Mám zdrojové sešity viz příloha, které se budou naplňovat daty a potřebuji vytvořit cílový sešit, kde se tyto data budou kopírovat pod sebe ze všech zdrojových sešitů.

Tudíž bych potřeboval příkaz, který bude kopírovat ze všech zdrojových sešitů oblasti od řádku 4 vždy sloupce A:G do posledního řádku s daty. Bude je kopírovat do výsledného sešitu pod sebe, tudíž každá další zdrojová data budou kopírována vždy do prvního bezdatového řádku cílového sešitu.

Doufám, že si rozumíme, myslím, že to není ve VBA složité, ale neumím v tom programovat :(

Jsi ochotný a předem děkuji za každou radu.

http://www.uschovna.cz/zasilka/M0563EAY8W6JFD7B-JFYcitovat
#012716
Opičák
Mrknu na to, ale teď mam nějakou práci. Řešení pošlu.citovat
#012717
avatar
Moc děkuju.citovat
#012735
Opičák
Předpokládám, že všechny výkazy jsou totožné, co se rozvržení týče.

Nevím jak má vypadat soubor do kterého se budou kopírovat data z výkazů, tak jsem to nějak udělal.

Soubory s výkazy musí být v samostatném adresáři.

Vyzkoušej.
Příloha: zip12735_souhrn-vykaz-prace.zip (33kB, staženo 36x)
citovat
#012746
avatar
Moc moc děkuju, už jsem si to vše nastavil, aby to správně načítalo.
Bere to řádky, kde je datum, tak musím všechny donutit, aby žádné datum nevynechali a bude to makat.
Ještě jednou díky ;-)citovat

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