Note: The other languages of the website are Google-translated. Back to English

Jak kombinovat více sešitů do jednoho hlavního sešitu v aplikaci Excel?

Už jste někdy uvízli, když musíte kombinovat více sešitů do hlavního sešitu v aplikaci Excel? Nejstrašnější věcí je, že sešity, které musíte kombinovat, obsahují několik pracovních listů. A jak kombinovat pouze zadané listy více sešitů do jednoho sešitu? Tento kurz ukazuje několik užitečných metod, které vám pomohou vyřešit problém krok za krokem.


Kombinujte více sešitů do jednoho sešitu s funkcí Přesunout nebo Kopírovat

Pokud existuje jen pár sešitů, které je třeba kombinovat, můžete pomocí příkazu Přesunout nebo Kopírovat ručně přesunout nebo zkopírovat listy z původního sešitu do hlavního sešitu.

1. Otevřete sešity, které sloučíte do hlavního sešitu.

2. Vyberte listy v původním sešitu, které přesunete nebo zkopírujete do hlavního sešitu.

Poznámky:

1). Můžete vybrat několik nesousedících listů s přidržením Ctrl klíč a klikání na záložky listu jeden po druhém.

2). Chcete-li vybrat více sousedních listů, klikněte na kartu prvního listu a podržte směna klíč a poté kliknutím na kartu poslední list vyberte všechny.

3). Můžete kliknout pravým tlačítkem na libovolnou kartu listu a kliknout na Vyberte všechny listy z místní nabídky vyberte všechny listy v sešitu současně.

3. Po výběru potřebných listů klikněte pravým tlačítkem na kartu listu a poté klikněte na Přesunout nebo Kopírovat z kontextové nabídky. Viz snímek obrazovky:

4. Potom Přesunout nebo Kopírovat objeví se dialogové okno Zarezervovat z rozevíracího seznamu vyberte hlavní sešit, do kterého přesunete nebo zkopírujete listy. Vyberte přesun do konce v Před listem zaškrtněte políčko Vytvořte kopii a nakonec klikněte na OK .

Pak můžete vidět listy ve dvou sešitech spojených do jednoho. Chcete-li přesunout listy z jiných sešitů do hlavního sešitu, opakujte výše uvedené kroky.


Zkombinujte více sešitů nebo určených listů sešitů do hlavního sešitu pomocí VBA

Pokud existuje více sešitů, které je třeba sloučit do jednoho, můžete rychle dosáhnout následujících kódů VBA. Postupujte prosím následovně.

1. Vložte všechny sešity, které chcete zkombinovat, do jednoho ve stejném adresáři.

2. Spusťte soubor Excel (tento sešit bude hlavním sešitem).

3. zmáčkni Další + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno. V Microsoft Visual Basic pro aplikace okno, klepněte na tlačítko Vložit > Modul, potom zkopírujte níže uvedený kód VBA do okna modulu.

Kód VBA 1: Sloučení více sešitů aplikace Excel do jednoho

Sub GetSheets()
'Updated by Extendoffice 2019/2/20
Path = "C:\Users\dt\Desktop\dt kte\"
Filename = Dir(Path & "*.xlsx")
  Do While Filename <> ""
  Workbooks.Open Filename:=Path & Filename, ReadOnly:=True
     For Each Sheet In ActiveWorkbook.Sheets
     Sheet.Copy After:=ThisWorkbook.Sheets(1)
  Next Sheet
     Workbooks(Filename).Close
     Filename = Dir()
  Loop
End Sub
	

Poznámky:

1. Výše ​​uvedený kód VBA zachová po sloučení názvy listů původních sešitů.

2. Pokud chcete po sloučení rozlišit, které listy v hlavním sešitu pocházejí, použijte níže uvedený kód VBA 2.

3. Pokud chcete pouze kombinovat určené listy sešitů do hlavního sešitu, může vám pomoci následující kód VBA 3.

V kódech VBA: „C: \ Users \ DT168 \ Desktop \ KTE \„Je cesta ke složce. V kódu VBA 3 „List1, List3„jsou zadané listy sešitů, které zkombinujete do hlavního sešitu. Můžete je změnit podle svých potřeb.

Kód VBA 2: Sloučit sešity do jednoho (každý list bude pojmenován předponou původního názvu souboru):

Sub MergeWorkbooks()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
On Error Resume Next
xStrPath = "C:\Users\DT168\Desktop\KTE\"
xStrFName = Dir(xStrPath & "*.xlsx")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
Do While Len(xStrFName) > 0
    Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
    xStrAWBName = ActiveWorkbook.Name
    For Each xWS In ActiveWorkbook.Sheets
    xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.Count)
    Set xMWS = xTWB.Sheets(xTWB.Sheets.Count)
    xMWS.Name = xStrAWBName & "(" & xMWS.Name & ")"
    Next xWS
    Workbooks(xStrAWBName).Close
    xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub

Kód VBA 3: Sloučit určené listy sešitů do hlavního sešitu:

Sub MergeSheets2()
'Updated by Extendoffice 2019/2/20
Dim xStrPath As String
Dim xStrFName As String
Dim xWS As Worksheet
Dim xMWS As Worksheet
Dim xTWB As Workbook
Dim xStrAWBName As String
Dim xI As Integer
On Error Resume Next

xStrPath = " C:\Users\DT168\Desktop\KTE\"
xStrName = "Sheet1,Sheet3"

xArr = Split(xStrName, ",")

Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set xTWB = ThisWorkbook
xStrFName = Dir(xStrPath & "*.xlsx")
Do While Len(xStrFName) > 0
Workbooks.Open Filename:=xStrPath & xStrFName, ReadOnly:=True
xStrAWBName = ActiveWorkbook.Name
For Each xWS In ActiveWorkbook.Sheets
For xI = 0 To UBound(xArr)
If xWS.Name = xArr(xI) Then
xWS.Copy After:=xTWB.Sheets(xTWB.Sheets.count)
Set xMWS = xTWB.Sheets(xTWB.Sheets.count)
xMWS.Name = xStrAWBName & "(" & xArr(xI) & ")"
Exit For
End If
Next xI
Next xWS
Workbooks(xStrAWBName).Close
xStrFName = Dir()
Loop
Application.ScreenUpdating = True
Application.DisplayAlerts = True

End Sub

4. zmáčkni F5 klíč ke spuštění kódu. Poté jsou všechny listy nebo určené listy sešitů v určité složce sloučeny do hlavního sešitu najednou.


Snadno kombinujte více sešitů nebo určených listů sešitů do jednoho sešitu

Naštěstí, Kombinovat sešit užitečnost Kutools pro Excel usnadňuje sloučení více sešitů do jednoho. Podívejme se, jak tuto funkci získat kombinací více sešitů.

Před aplikací Kutools pro Excel, Prosím nejprve si jej stáhněte a nainstalujte.

1. Vytvořte nový sešit a klikněte na Kutools Plus > Kombinovat. Poté se zobrazí dialogové okno, které vám připomene, že by měly být uloženy všechny kombinované sešity a funkci nelze použít na chráněné sešity, klikněte na OK .

2. V Zkombinujte pracovní listy průvodce, vyberte Zkombinujte více pracovních listů ze sešitů do jednoho sešitu možnost a poté klikněte na další knoflík. Viz screenshot:

3. V Zkombinujte pracovní listy - krok 2 ze 3 dialogové okno, klepněte na tlačítko přidat > Soubor or Desky přidáte soubory Excel, které sloučíte do jednoho. Po přidání souborů aplikace Excel klikněte na úprava tlačítko a vyberte složku pro uložení hlavního sešitu. Viz screenshot:

Nyní jsou všechny sešity sloučeny do jednoho.

Ve srovnání s výše uvedenými dvěma metodami Kutools pro Excel má následující výhody:

  • 1) Všechny sešity a listy jsou uvedeny v dialogovém okně;
  • 2) U listů, které chcete vyloučit ze slučování, jednoduše zrušte jejich zaškrtnutí;
  • 3) Prázdné listy jsou automaticky vyloučeny;
  • 4) Původní název souboru bude po sloučení přidán jako předpona k názvu listu;
  • Pro více funkcí této funkce prosím navštivte zde.

  Pokud chcete mít bezplatnou zkušební verzi (30-den) této utility, kliknutím jej stáhněte, a poté přejděte k použití operace podle výše uvedených kroků.


Kutools pro Excel - Pomůže vám vždy dokončit práci před časem, mít více času na radost ze života
Stává se vám často, že hrajete s prací, nedostatkem času pro sebe a rodinu?  Kutools pro Excel vám může pomoci vypořádat se s 80% Excel hádanky a zlepšit 80% efektivitu práce, vám více času na péči o rodinu a užívat si života.
300 pokročilých nástrojů pro 1500 pracovních scénářů, usnadní vám práci mnohem více než kdy dříve.
Už si nemusíte pamatovat vzorce a kódy VBA, dejte svému mozku odpočinout od nynějška.
Složité a opakované operace lze provést jednorázovým zpracováním během několika sekund.
Omezte každý den tisíce operací klávesnicí a myší, rozloučte se s nemocemi z povolání hned teď.
Staňte se odborníkem na Excel za 3 minuty, pomozte rychle získat uznání a povýšení na zvýšení platu.
110,000 300 vysoce efektivních lidí a více než XNUMX světově proslulých společností.
Udělejte ze svých $ 39.0 v hodnotě více než $ 4000.0 školení ostatních.
Plná zkušební verze zdarma 30-den. 60denní záruka vrácení peněz bez udání důvodu.

Komentáře (146)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Ahoj, prosím, pomozte mi s tímto níže uvedeným stavem. Mám jiný sešit, který má více než 5 listů, každý v jiné cestě. Potřebuji sloučit všechny listy z jiného sešitu do jednoho sešitu. Může mi někdo pomoci vyřešit s macro.TIA!
Tento komentář byl moderátorem webu minimalizován
[quote] Ahoj Plz, pomozte mi s tímto níže uvedeným stavem. Mám jiný sešit, který má více než 5 listů, každý v jiné cestě. Potřebuji sloučit všechny listy z jiného sešitu do jednoho sešitu. Může mi někdo pomoci vyřešit s macro.TIA!Autor: A. Karthi[/quote] Přejděte prosím ke stažení a instalaci Kutools pro Excel, můžete to rychle udělat. Ale pokud chcete používat VBA, může to být příliš složité. Další informace o tom, jak to provést, naleznete na adrese:http://www.extendoffice.com/product/kutools-for-excel/excel-combine-worksheets-into-one.html
Tento komentář byl moderátorem webu minimalizován
KUTOOLS Skvělé řešení. Potřebuji ještě jednu pomoc, když vytvářím hlavní sešit, pak se barva buňky listu změní z původního listu. Jak to mohu zachovat jako původní pracovní list.
Tento komentář byl moderátorem webu minimalizován
Naše kancelář disponuje duplikací dat (tj.-jméno, adresa, město, částka, datum podpisu) z několika excelových originálů a pokus o spojení dat bude nedokončenou prací. Jak toho lze dosáhnout, aby se eliminovala dvojí práce a dvojí zadávání informací?
Tento komentář byl moderátorem webu minimalizován
Zobrazuje se 'runtime error 1004', Copy Method of Worksheet class selhalo na řádku, který zní: Sheet.Copy After:=ThisWorkbook.Sheets(1). Používám Excel 2010. Můžete mi pomoci? Díky, - Susie
Tento komentář byl moderátorem webu minimalizován
Ahoj Susie, sám jsem na tomto problému nějakou dobu pracoval a dostávám stejnou chybu. Zkontrolujte, zda byl modul vytvořen v části PERSONAL namísto vašeho aktivního sešitu. Jakmile jsem vytvořil modul pod správným stromem, níže uvedený kód fungoval dobře. Sub GetSheets_xls() Dim Sheet As Worksheet Path = "C:\Users\vaše jménozde\Desktop\Testingfolder\" Název souboru = Dir(Cesta & "*.xls") Proveďte, zatímco Filename "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=False Set Sheet = ActiveWorkbook.Sheets(1) Sheet.Copy After:=ThisWorkbook.Sheets(1) 'Další list Workbooks(Filename).Close Filename = Dir() Loop End Sub Doufám, že to pomůže!
Tento komentář byl moderátorem webu minimalizován
Díky moc. Váš kód fungoval dobře.
Tento komentář byl moderátorem webu minimalizován
[quote]Zobrazila se mi 'runtime error 1004', Copy Method of Worksheet class selhalo na řádku, který zní: Sheet.Copy After:=ThisWorkbook.Sheets(1). Používám Excel 2010. Můžete mi pomoci? Díky, - SusieOd Susie[/quote] Měl stejný problém, funguje to, když přejdu na zobrazení a odkryji "PERSONAL", zdá se, že má problém s přístupem k tomuto makru se skrytým hlavním.
Tento komentář byl moderátorem webu minimalizován
Přejděte k zobrazení a odkryjte „PERSONAL“ – zdá se, že má potíže se spuštěním celého kódu, když je hlavní server skrytý. Makro můžete nastavit jako nativní pro tento sešit, ale budete ho muset celé znovu vytvořit pokaždé, když ho budete chtít použít
Tento komentář byl moderátorem webu minimalizován
Ahoj! Díky moc za tento soubor............. :roll: S pozdravem
Tento komentář byl moderátorem webu minimalizován
Ahoj, skvělý tip. Dělal téměř vše co jsem chtěl. V combinde sešitu bych byl rád, kdyby název listu obsahoval název původního sešitu, abych věděl, ze kterého sešitu data pocházejí. Data, která kombinuji, jsou z různých archivů. Musím vyhledat záznam, ale nevím, ve kterém archivu se nachází. Takže spojením všech dat do jednoho souboru mi umožní prohledávat všechny archivy najednou. Ale stále potřebuji vědět, ve kterém archivu je záznam. Henriku
Tento komentář byl moderátorem webu minimalizován
Aby kód obsahoval název souboru, udělejte to. Sub GetSheets() Dim temp As String Path = "C:\Users\....\Desktop\Excel Combin\" Název souboru = Dir(Cesta & "*.xlsx") Dělat, zatímco Filename "" Workbooks.Open Filename:= Cesta a název souboru, ReadOnly:=True temp = ActiveWorkbook.Name ActiveSheet.Name = dočasný ActiveWorkbook.Sheets(temp).Copy After:=ThisWorkbook.Sheets(1) Workbooks(Filename).Close Filename = Dir() Loop End Sub Note : toto je pouze pro kopírování prvního listu, lze jej upravit tak, aby dělal všechny listy
Tento komentář byl moderátorem webu minimalizován
Jak začleníte více listů a jak určíte jiný hlavní soubor pro vložení všech listů.
Tento komentář byl moderátorem webu minimalizován
Je to opravdu skvělé řešení. Děkuji. Jeden problém však, když to spustím takto, Excel se zeptá, zda chci uložit změny před zavřením (protože název byl změněn), a nechci to dělat pro každý soubor (kolem 32 na spuštění). Šlo by to nějak vyřešit?
Tento komentář byl moderátorem webu minimalizován
To je super :lol: moc mi to pomohlo...
Tento komentář byl moderátorem webu minimalizován
Díky, kamaráde, zpříjemnil jsi mi den díky této velmi užitečné webové stránce... Ve skutečnosti jsem také chtěl zkombinovat stejná data záhlaví různých listů do 1 hlavního listu, KUTOOL pro Excel mi hodně pomohl.... Ještě jednou děkuji .... :)
Tento komentář byl moderátorem webu minimalizován
Díky moc za cenné informace. Tohle opravdu funguje. Kroky uvedené v tomto článku mi opravdu usnadnily práci. Díky, Dinesh
Tento komentář byl moderátorem webu minimalizován
děkujeme za sdílení vašich znalostí
Tento komentář byl moderátorem webu minimalizován
Jak dosáhnete aktualizace změn z původního sešitu? Snažím se získat národní shrnutí, které umožní každému regionu vložit svá data do svých vlastních sešitů a poté mít národní souhrn, který se z toho aktualizuje? Rád bych to měl na začátku nastavené na celý rok a nefungoval zpětně.
Tento komentář byl moderátorem webu minimalizován
Po zkombinování pracovních listů do jednoho sešitu, jak ho uložíte, nepodařilo se mi jej uložit, jmenuje se Sešit1 a klikám na uložit nebo uložit jako, ale nefunguje to. Nějaké návrhy?
Tento komentář byl moderátorem webu minimalizován
Postupoval jsem podle kroků v části „Zkombinovat více sešitů do jednoho sešitu s VBA“ a kliknout na „spustit“, nic se nestalo. Nejsem si vědom chyb a nejsem si jistý, jak je opravit. Pomůžeš mi? následující je kód, který zadávám do nového sešitu. Děkuji Sub GetSheets() Path = "p:\download\macro\" Název souboru = Dir (Cesta & "*.xls") Dělat, zatímco Název souboru "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=True pro každý list v ActiveWorkbook.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Další list Workbooks(Filename).Close Filename = Dir() Loop End Sub
Tento komentář byl moderátorem webu minimalizován
Vážený pane/paní: Postupoval jsem podle kroků „Zkombinovat více sešitů do jednoho sešitu s VBA“, abych nastavil následující modul, ale nic se nestalo. Pomohli byste mi najít problém? děkuji Sub GetSheets() Path = "p:\download\macro\" Název souboru = Dir (Cesta & "*.xls") Dělat, zatímco Název souboru "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=True For Each List In ActiveWorkbook.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop End Sub
Tento komentář byl moderátorem webu minimalizován
pro novější verze excelu zkuste toto. Uložil jsem svůj otevřený sešit jako katalog a všechny soubory jsou v c:\temp. Sub GetSheets() Path = "c:\temp\" Název souboru = Dir(Cesta & "*.xls") Provádějte název souboru "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=True pro každý list v ActiveWorkbook. Sheets Sheet.Copy After:=Workbooks("catalog.xlsx").Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop End Sub
Tento komentář byl moderátorem webu minimalizován
Zkuste to pro novější verze Excelu. Uložil jsem svůj sešit jako katalog, všechny soubory jsou v c:\temp. Sub GetSheets() Path = "c:\temp\" Název souboru = Dir(Cesta & "*.xls") Provádějte název souboru "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=True pro každý list v ActiveWorkbook. Sheets Sheet.Copy After:=Workbooks("catalog.xlsx").Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop End Sub
Tento komentář byl moderátorem webu minimalizován
[quote]Vyzkoušejte to pro novější verze Excelu. Uložil jsem svůj sešit jako katalog, všechny soubory jsou v c:\temp. Sub GetSheets() Path = "c:\temp\" Název souboru = Dir(Cesta & "*.xls") Provádějte název souboru "" Workbooks.Open Filename:=Cesta a název souboru, ReadOnly:=True pro každý list v ActiveWorkbook. Sheets Sheet.Copy After:=Workbooks("catalog.xlsx").Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop End SubOd Davea[/quote] Stále se mi zobrazuje "nelze přiřadit vlastnost pouze pro čtení" ohledně cesty... Nějaký nápad?
Tento komentář byl moderátorem webu minimalizován
Taky mám ten problém. Přišel jsi na to?
Tento komentář byl moderátorem webu minimalizován
Zatím nic... Nenašel jsem žádné řešení nebo nikdo nenavrhl nápravu. Promiňte...
Tento komentář byl moderátorem webu minimalizován
Já také. Toto fungovalo před 6 měsíci, naposledy jsem to musel spustit. Našel už někdo řešení? Pokud jste to měli spuštěné dříve a nyní to nebude fungovat, mohlo by to mít něco společného s aktualizací od společnosti Microsoft? Je to opravdu šikovný nástroj pro mé úkoly a šetří mi spoustu času. Co se mohlo změnit, že by Excel najednou začal zobrazovat tuto zprávu? Jelikož jsem ve VBA poměrně nový, nemám ponětí, kde začít s analýzou logiky. S pozdravem Greg. Glasgow, Skotsko.
Tento komentář byl moderátorem webu minimalizován
Zdá se, že "Cesta" je nyní rezervována, takže použijte jakýkoli jiný název a nahraďte "Cesta", např. "Moje cesta".
Tento komentář byl moderátorem webu minimalizován
Možná byste měli změnit ReadOnly:=True to ReadOnly:=False, udělal jsem to a bylo to užitečné
Tento komentář byl moderátorem webu minimalizován
Hledal jsem něco v tomto smyslu, ale chtěl jsem se vyjádřit. Nemusí být název souboru Do While "" něco jiného než ""? nebo to čtu špatně? Možná Do While NOT filename = "" Jen myšlenka...
Tento komentář byl moderátorem webu minimalizován
Chci spojit všechny listy do jednoho listu, kde jsou nadpisy společné...pls help
Tento komentář byl moderátorem webu minimalizován
Ahoj, zkusil jsem použít výše uvedená makra k seřazení několika souborů, bohužel žádné výsledky... může mi někdo pomoci zbavit se ručního řazení souborů.
Tento komentář byl moderátorem webu minimalizován
Mám 112 excelových listů, které chci vložit do jednoho listu bez kopírování a vkládání. Prosím pomoz mi ven.
Tento komentář byl moderátorem webu minimalizován
Mám sešit, který obsahuje asi 250 listů. Potřebuji Cobain v jednom listu. prosím dejte mi řešení
Tento komentář byl moderátorem webu minimalizován
Vyzkoušejte toto...získal jsem to z jiného webu, ale bohužel si nepamatuji jméno té paní, takže se omlouvám, že jsem se o ní nezmínil, moje chyba" Kombinujte více WB v Excelu: PAMATUJTE NA ZMĚNU MyPath = ! Sub Merge2MultiSheets( ) Dim wbDst As Workbook Dim wbSrc As Workbook Dim wsSrc As Worksheet Dim MyPath As String Dim strFilename As String Application.DisplayAlerts = False Application.EnableEvents = False Application.ScreenUpdating = False MyPath = "\\MyPath\etc\etc..." Set wbDst = Workbooks.Add(xlWBATWorksheet) strFilename = Dir(MyPath & "\*.xls", vbNormal) If Len(strFilename) = 0 Pak Exit Sub Proveďte Do strFilename = "" Set wbSrc = Workbooks.Open(Filename:= MyPath & "\" & strFilename) Set wsSrc = wbSrc.Worksheets(1) wsSrc.Copy After:=wbDst.Worksheets(wbDst.Worksheets.Count) wbSrc.Close False strFilename = Dir() Smyčka wbDst.Worksheets(1). Smazat Application.DisplayAlerts = True Application.EnableEvents = True Application.ScreenUpdating = True End Sub
Tento komentář byl moderátorem webu minimalizován
Ahoj, přidal jsem kód do modulu. Kniha Excel dostala název Masterfile. Kam v kódu přidám. Děkuji
Tento komentář byl moderátorem webu minimalizován
Nic z toho mi nefungovalo, nakonec jsem zprovoznil tento. Pro informaci, používám 2010 „Popis: Kombinuje všechny soubory ve složce do hlavního souboru. Sub MergeFiles() Dim path As String, ThisWB As String, lngFilecounter As Long Dim wbDest As Workbook, shtDest As Worksheet, ws As Worksheet Dim Filename As String, Wkb As Workbook Dim CopyRng As Range, Dest As Range Dim RowofCopySheet As Integer R 2 ' Řádek na začátku v listech, které kopírujete z ThisWB = ActiveWorkbook.Name path = "mypath....." ' Nezapomeňte změnit tuto Application.EnableEvents = False Application.ScreenUpdating = False Nastavit shtDest = ActiveWorkbook .Sheets(1) Filename = Dir(cesta & "\*.xls", vbNormal) If Len(Filename) = 0 Pak Exit Sub Proveďte Do Filename = vbNullString If Not Filename = ThisWB Then Set Wkb = Workbooks.Open(Filename: =cesta & "\" & název souboru) Set CopyRng = Wkb.Sheets(1).Range(Cells(RowofCopySheet, 1), Cells(ActiveSheet.UsedRange.Rows.Count, ActiveSheet.UsedRange.Columns.Count)) Set Dest = shtDest.Range("A" & shtDest.UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1) CopyRng.Copy Dest Wkb.Close False End If Filename = Dir() Smyčka Rang e("A1").Vyberte Application.EnableEvents = True Application.ScreenUpdating = True MsgBox "Hotovo!" End Sub
Tento komentář byl moderátorem webu minimalizován
Jak to upravím tak, aby načítaná data vždy začínala na horním řádku? Pokud tento kód spustím dvakrát, přidá data na konec mých předchozích dat (z prvního spuštění makra).
Tento komentář byl moderátorem webu minimalizován
Změňte tento řádek: RowofCopySheet = 2 na RowofCopySheet = 1
Tento komentář byl moderátorem webu minimalizován
Ahoj, mám několik souborů Excel (jeden list) různých složek s ochranou heslem. Chci na konci dne sloučit všechna data do jednoho hlavního souboru. Pokaždé, když musím zadat heslo a otevřít soubor a zkopírovat vložit do hlavního souboru.. Prosím, pomozte mi s kódem VBA.
Zatím zde nejsou žádné komentáře
Načíst další
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL