Sfat: alte limbi sunt traduse de Google. Puteți vizita English versiune a acestei legături.
Contul meu
x
or
x
x
Inregistreaza-te
x

or

Cum se combină mai multe registre de lucru într-un registru de lucru master în Excel?

Ați fost vreodată blocat atunci când trebuie să combinați mai multe registre de lucru într-un registru de lucru master în Excel? Cel mai teribil lucru este că registrele de lucru de care aveți nevoie să combinați conțin mai multe foi de lucru. Și cum să combinați numai foile de lucru specificate din mai multe registre de lucru într-un singur registru de lucru? Acest tutorial demonstrează mai multe metode utile care vă ajută să rezolvați pașii cu probleme în funcție de pași.


Combinați cu ușurință mai multe registre de lucru într-unul din Excel:

OBIECTIV TIP LUPA Combina registru de lucru utilitate Kutools pentru Excel vă poate ajuta să combinați cu ușurință mai multe fișiere Excel într-o singură. În plus, vă permite să combinați cu ușurință foile de lucru specificate ale anumitor fișiere Excel într-un registru de lucru principal. Descărcați acum traseul complet gratuit 60-day!

Combinați mai multe registre de lucru într-un singur registru de lucru cu funcția Mutare sau Copiere

Dacă trebuie să combinați doar câteva registre de lucru, puteți utiliza comanda Mutare sau copiere pentru a muta sau copia manual foile de lucru din agenda de lucru originală în registrul de lucru master.

1. Deschideți registrele de lucru pe care le veți îmbina într-un registru de lucru principal.

2. Selectați foile de lucru din agenda de lucru originală pe care le veți muta sau copiați în registrul de lucru master.

note:

1). Puteți selecta mai multe foi de lucru care nu sunt adiacente cu menținerea Ctrl și făcând clic pe filele de coli unul câte unul.

2). Pentru a selecta mai multe foi de lucru adiacente, faceți clic pe prima filă, țineți apăsată tasta Schimba , apoi faceți clic pe fila ultima foaie pentru a le selecta pe toate.

3). Puteți să faceți clic dreapta pe orice fila foaie, faceți clic pe Selectați Toate foile din meniul contextual pentru a selecta simultan toate foile de lucru din registrul de lucru.

3. După ce ați selectat foile de lucru necesare, faceți clic dreapta pe fila foaie, apoi faceți clic pe Mutați sau copiați din meniul contextual. Vedeți captura de ecran:

4. Apoi Mutați sau copiați dialogul apare, în A rezerva drop-down, selectați registrul de lucru pe care îl veți muta sau copiați foile de lucru. Selectați mutarea pentru a termina în Înainte de foaie caseta, verificați Creați o copie , apoi faceți clic pe OK butonul.

Apoi, puteți vedea foi de lucru în două registre de lucru combinate într-una. Repetați pașii de mai sus pentru a muta foile de lucru din alte registre de lucru în registrul de lucru master.

Tab Tab Office - un add-in real time-saver!

Afișați toate documentele deschise într-o singură fereastră pentru a vă ajuta să găsiți rapid dintr-o privire rapid un document necesar.

Demonstrație completă cu 45-zi. Compatibil cu fiecare versiune de Excel, Word și PowerPoint.

ȘTIU MAI MULTE DESPRE ADĂUGARE>

Combinați mai multe registre de lucru sau foi de lucru specificate într-un registru de lucru master cu VBA

Dacă există mai multe registre de lucru necesare pentru a fi îmbinate într-una, puteți aplica următoarele coduri VBA pentru a le atinge rapid. Procedați după cum urmează.

1. Puneți toate registrele de lucru pe care doriți să le combinați într-unul sub același director.

2. Lansați un fișier Excel (acest registru de lucru va fi capitolul de lucru principal).

3. apasă pe Alt + F11 pentru a deschide tasta Microsoft Visual Basic pentru aplicații fereastră. În Microsoft Visual Basic pentru aplicații fereastră, faceți clic pe Insera > Module, apoi copiați sub codul VBA în fereastra Module.

Cod VBA 1: Îmbinați mai multe registre de lucru Excel într-unul singur

Sub GetSheets()
'Updated by Extendoffice 2019/2/20
Path = "C:\Users\dt\Desktop\dt kte\"
Filename = Dir(Path & "*.xls")
  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
	

note:

1. Codul VBA de mai sus va păstra numele foilor din registrele de lucru originale după fuziune.

2. Dacă doriți să distingeți ce foi de lucru din registrul de lucru master au venit de unde după fuziune, aplicați codul VBA de mai jos 2.

3. Dacă doriți doar să combinați foi de lucru specificate din registrele de lucru într-un registru de lucru master, codul VBA de mai jos 3 vă poate ajuta.

În codurile VBA, "C: \ Utilizatori \ DT168 \ Desktop \ KTE \"Este calea directorului. În codul VBA 3, "Sheet1, Sheet3"sunt foile de lucru specificate din registrele de lucru pe care le veți combina cu un registru de lucru principal, pe care le puteți modifica în funcție de nevoile dvs.

Cod VBA 2: Îmbinați registrele de lucru într-una (fiecare foaie de lucru va fi denumită cu prefixul numelui original al fișierului):

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

Cod VBA 3: Îmbinați foile de lucru specificate din registrele de lucru într-un registru de lucru principal:

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. apasă pe F5 cheia pentru a rula codul. Apoi, toate foile de lucru sau foile de lucru specificate din registrele de lucru din folderul respectiv sunt combinate simultan într-un registru de lucru principal.

Combinați cu ușurință mai multe registre de lucru sau foi de lucru specificate într-un singur registru de lucru

Kutools pentru Excel

Este un add-in Excel excelent, care adună mai mult decât funcțiile avansate 300 pentru a vă simplifica munca în operațiile Excel. Cu aceasta, puteți ușor:

  • Combinați mai multe cărți de lucru;
  • Count / sum celule după culoare;
  • Celule separate;
  • Lotul elimina spațiile;
  • Mai multe trăsături...

DOWNLOAD GRATUIT ACUM!

Din fericire, Combina registru de utilizare utilitar de Kutools pentru Excel face mult mai ușor să îmbinați mai multe registre de lucru într-una. Să vedem cum funcționează această funcție în combinarea mai multor registre de lucru.

1. Creați un registru de lucru nou și dați clic pe Kutools Mai mult > Combina. Apoi apare o fereastră de dialog pentru a vă reaminti că toate registrele de lucru combinate trebuie salvate și caracteristica nu poate fi aplicată în registrele de lucru protejate, faceți clic pe OK butonul.

2. În Combinați foile de lucru asistent, selectați Combinați mai multe foi de lucru din cărți de lucru într-un singur registru de lucru , apoi faceți clic pe Următor → buton. Vedeți captura de ecran:

3. În Combinați foile de lucru - Pasul 2 al 3 , faceți clic pe Adăuga > Fișier or Dosar pentru a adăuga fișierele Excel pe care le veți îmbina într-una singură. După adăugarea fișierelor Excel, faceți clic pe finalizarea și alegeți un dosar pentru a salva registrul de lucru master. Vedeți captura de ecran:

Acum, toate registrele de lucru sunt îmbinate într-una.

În comparație cu cele două metode de mai sus, Kutools pentru Excel are următoarele avantaje:

  • 1) Toate casetele de lucru și foile de lucru sunt listate în caseta de dialog;
  • 2) Pentru foile de lucru pe care doriți să le excludeți din fuzionare, debifați-o;
  • 3) foile de lucru sunt excluse automat;
  • 4) Numele fișierului original va fi adăugat ca prefix la numele foii după fuziune;
  • Pentru mai multe funcții ale acestei funcții, vizitați aici.

Face asta Combinați registrele de lucru ajutor utilitar? Să descărcăm și să încercăm întreaga zi 60-zi!

Instrumente de productivitate recomandate pentru Microsoft Office

Fila Office - Navigare în tab-uri, editarea și gestionarea în Excel / Word / PowerPoint:

Tab-ul Office aduce interfața cu tab-urile așa cum se vede în browserele web, cum ar fi Google Chrome, versiunile noi ale Internet Explorer și Firefox în Microsoft Excel / Word / PowerPoint. Acesta va fi un instrument de economisire a timpului și de neînlocuit în munca dumneavoastră. Vedeți mai jos demonstrația:

ot1

Kutools pentru Excel - combină mai mult decât funcțiile și instrumentele avansate 300 pentru Microsoft Excel:

Kutools pentru Excel este un add-in Excel la îndemână, cu mai multe funcții avansate decât 300, pentru a simplifica diferitele tipuri de sarcini complicate în câteva clicuri din Excel. De exemplu:

  • Combinați mai multe foi de lucru sau cărți de lucru într-un singur registru de lucru
  • Count și sum cells pe baza culorii de fundal / font
  • Împărțiți conținutul celulelor în mai multe rânduri / coloane după spațiu / virgulă / delimitator
  • Lot Scoateți spațiile de conducere în celule
KTE

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    cindy · 2 years ago
    thanks for the macro guided for 'Combine multiple workbooks to one workbook with VBA'.

    However, i do have an additional cirtumtances.
    Let's take your example.
    In the folder 'dt kte', there are 4 workbook (book1, book2, book3 & book4)
    The macro will merge all worksheet in every single workbook into my excel file.
    However, the circumtances i need is:-
    in every workbook, there is mutual sheet named "HIJ".

    what would be the macro if i only want to merge the HIJ worksheet in book1 to book4, into one workbook i want?
  • To post as a guest, your comment is unpublished.
    MUHAMMAD MURTAZA · 2 years ago
    ASSALAM O ALIKUM,,

    LOT OF THANKS FOR COMBINE WORK SHEET IN MASTER SHEET
  • To post as a guest, your comment is unpublished.
    Gnanesh · 2 years ago
    Thank you very much for the script for combining workbooks!
  • To post as a guest, your comment is unpublished.
    Hoang · 2 years ago
    The above code works well, but it seems that it doesn't follow any certain order, in my folder, each excel file ( before merging ) has 1 sheet with same name,for exp: book1 contains sheet named A, book2 also contains sheet named A ,....then after merging by VBA, the combined workbook contains sheets named A, A(1), A(2), A(3),...in random order, A(1) actually doesn't belongs to initial book1. So it's hard for me to identify, I can't know each sheet originally belongs to which file. The result I expect is that all sheets will be combine in name order of original separated file

    Perhaps i can't explain my point well, if someone has same situation or can understand me, then pls kindly upgrade vba code that can combine sheets in order of alphabet name or ascending number ?
  • To post as a guest, your comment is unpublished.
    wooly · 2 years ago
    I'm new to Excel and am struggling to identify what I need to personalise in this code to make it work. Obviously "path" but is that it? as I'm getting errors on the two "set copyrng" and "set dest" row.

    None of these worked for me

    I finally got this one to work. FYI I am using 2010

    'Description: Combines all files in a folder to a master file.
    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

    RowofCopySheet = 2 ' Row to start on in the sheets you are copying from

    ThisWB = ActiveWorkbook. Name

    path = "mypath....." ' Dont't forget to change this

    Application.Ena bleEvents = False
    Application.Scr eenUpdating = False

    Set shtDest = ActiveWorkbook. Sheets(1)
    Filename = Dir(path & "\*.xls", vbNormal)
    If Len(Filename) = 0 Then Exit Sub
    Do Until Filename = vbNullString
    If Not Filename = ThisWB Then
    Set Wkb = Workbooks.Open( Filename:=path & "\" & Filename)
    Set CopyRng = Wkb.Sheets(1).R ange(Cells(Rowo fCopySheet, 1), Cells(ActiveShe et.UsedRange.Ro ws.Count, ActiveSheet.Use dRange.Columns. Count))
    Set Dest = shtDest.Range(" A" & shtDest.UsedRan ge.SpecialCells (xlCellTypeLast Cell).Row + 1)
    CopyRng.Copy Dest
    Wkb.Close False
    End If

    Filename = Dir()
    Loop

    Range("A1").Sel ect

    Application.Ena bleEvents = True
    Application.Scr eenUpdating = True

    MsgBox "Done!"
    End Sub