VBA code to copy and paste into workbook?


New Member
What VBA code can copy and paste data in separate workbooks all in the same file folder with the same column headings and all on Sheet 1 into a separate workbook?


Well-known Member
Save the file you want the data copied to as a macro enabled workbook (.xlsm) in the same directory as the files to be copied and copy the code below into the standard code module1 of that workbook. The code assumes that each workbook uses Sheet 1 for data content.
Sub t()
Dim wb As Workbook, sh As Worksheet, fPath As String, fName As String
Set sh = ThisWorkbook.Sheets("Sheet1") 'Edit sheet name
fPath = ThisWorkbook.Path & "\"
fName = Dir(fPath & "*.xl*")
    Do While fName <> ""
        If fName <> ThisWorkbook.Name Then
            Application.DisplayAlerts = False
            Set wb = Workbooks.Open(fPath & fName)
            wb.Sheets(1).UsedRange.Offset(1).Copy 'Don't copy headers
            sh.Cells(Rows.Count, 1).End(xlUp)(2).PasteSpecial xlPasteValues 'Don't copy formulas
            wb.Close False
            Application.DisplayAlerts = True
        End If
        fName = Dir
End Sub
Last edited:

Some videos you may like

This Week's Hot Topics

  • Importing multiple excel files into one spreadsheet
    Hi, I'm trying to import multiple excel files (with the same format into a single spreadsheet) so that each day's file is listed underneath the...
  • find many based on a certain criteria
    good evening, I hope someone can help me? I have a workbook sheet 2 contains lots of data.... I would like to be able to find anything on sheet...
  • How to copy multiple rows using If
    Hi all, I'm very new to VBA and have written this simple code to copy certain cells if a certain cell within that row contains any data. I need...
  • VBA If statement
    Dear All, I have two dates, where I'd like a message box to pop, if the dates are between this criteria. [CODE] sDate1 = #10/1/2019#...
  • Text Format
    I have a sheet for user to keyin the data. The format of the data can be 451 / 1903, 0012 / 9908 or 00287 / 0099. The number after the "/" is...
  • Macro to copy values across rows and transposing them and add the user id
    [FONT=Times New Roman][SIZE=3][COLOR=#000000][/COLOR][/SIZE][/FONT][FONT=Calibri][SIZE=3][COLOR=#000000]Hi,[/COLOR][/SIZE][/FONT] [FONT=Times New...