- Macrocomanda va copia o parte din prima foaie de lucru a fiecărui fișier care se află în folderul C: \ Date în prima foaie de lucru a registrului de lucru.
- Prima macro face o copie normală și a doua macro copiază valorile.
Va copia prima foaie a fiecărui registru de lucru în registrul de lucru în care se află codul.
Numele foii este numele registrului de lucru.
Sub CopySheet () Dim bookbook As Workbook Dim my Work as Dim Dim as Long Application.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Apoi setați cartea de bază = 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
Pentru acest sub (TestFile4_values) trebuie să aveți foi de lucru neprotejate sau să le protejați în cod.
Sub CopySheetValues () Dim bookbook As Workbook Dim my Book As Work Dim Dim as Application Long.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Apoi setați cartea de bază = 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 End With mybook.Close Next i End If End With Application.ScreenUpdating = True End Sub