Skopírujte list z každého zošita do zošita v priečinku pomocou jazyka VBA v programe Microsoft Excel

Anonim
  • Makro skopíruje časť prvého pracovného hárka každého súboru, ktorý je v priečinku C: \ Data, do prvého pracovného hárka vášho zošita.
  • Prvé makro skopíruje normálne a druhé makro skopíruje hodnoty.

Skopíruje prvý list každého zošita do zošita, kde je kód.
Názov hárka je názov zošita.

Sub CopySheet () Dim basebook As Workbook Dim mybook As Workbook Dim i As Long Application.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Potom nastavte základnú knihu = ThisWorkbook For i = 1 To .FoundFiles.Count Set mybook = Workbooks.Open (.FoundFiles (i)) mybook.Worksheets (1) .Copy after: = _ basebook.Sheets (basebook.Sheets.Count) ActiveSheet.Name = mybook.Name mybook.Close Next i End If End with Application.ScreenUpdating = True End Sub

Pre tento čiastkový súbor (TestFile4_values) musíte mať nechránené pracovné hárky alebo ich v kóde zrušiť.

Sub CopySheetValues ​​() Dim basbook as Workbook Dim mybook As Workbook Dim i As Long Application.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Ex 0 Potom nastavte základnú knihu = ThisWorkbook For i = 1 To .FoundFiles.Count Set mybook = Workbooks.Open (.FoundFiles (i)) mybook.Worksheets (1) .Copy after: = _ basebook.Sheets (basebook.Sheets.Count) ActiveSheet.Name = mybook.Name With ActiveSheet.UsedRange .Value = .Value Koniec mybook.Close Next i End If End With Application.ScreenUpdating = True End Sub