try:
Sub MergeData2()
Dim SummarySheet As Worksheet, FolderPath As String, SelectedFiles(), NRow As Long
Dim FileName As String, NFile As Long, WorkBk As Workbook, SourceRange As Range
Dim DestRange As Range, LastRow As Long

' Create a new workbook and set a variable to the first sheet.
Set SummarySheet = Workbooks.Add(xlWBATWorksheet).Worksheets(1)
' Modify this folder path to point to the files you want to use.
FolderPath = "C:\Users\Documents\ExcelVBApractice\"
' Set the current directory to the the folder path.
ChDrive FolderPath
ChDir FolderPath
' Open the file dialog box and filter on Excel files, allowing multiple files to be selected.
SelectedFiles = Application.GetOpenFilename(filefilter:="Excel Files (*.xl*), *.xl*", MultiSelect:=True)
' NRow keeps track of where to insert new rows in the destination workbook.
NRow = 1
' Loop through the list of returned file names
For NFile = LBound(SelectedFiles) To UBound(SelectedFiles)
  ' Set FileName to be the current workbook file name to open.
  FileName = SelectedFiles(NFile)
  ' Open the current workbook.
  Set WorkBk = Workbooks.Open(FileName)
  ' Create the variable for the last row.
  LastRow = WorkBk.Worksheets(1).Cells.Find(What:="*", After:=WorkBk.Worksheets(1).Cells.Range("A1"), SearchDirection:=xlPrevious, LookIn:=xlFormulas, SearchOrder:=xlByRows).Row
  ' Set the source range, i.e. the columns to copy.
  Set SourceRange = WorkBk.Worksheets(1).Range("$A$1:$C$" & LastRow & ", $E$1:$F$" & LastRow & ", $L$1:$L$" & LastRow)
  ' Set the destination range to top left cell of destination.
  Set DestRange = SummarySheet.Range("A" & NRow)
  
  
  ' Copy over from the source to the destination.
  'Use:
  SourceRange.Copy DestRange ' can use this line instead of the 3 below - it copies everything, formats and all.
  'or these next 3 which copy over only the values (dates look ugly):
'  SourceRange.Copy
'  DestRange.PasteSpecial xlPasteValues
'  Application.CutCopyMode = False
  
  
  ' Increase NRow so that we know where to copy data next.
  NRow = NRow + SourceRange.Rows.Count
  ' Close the source workbook without saving changes.
  WorkBk.Close savechanges:=False
Next NFile
' Call AutoFit on the destination sheet so that all data is readable.
SummarySheet.Columns.AutoFit
'Application.Goto SummarySheet.Cells(1, 1) 'this line only needed to select A1 if xlPasteValues is used above.
End Sub
Comments in code re variations.

Can also try:
Sub MergeData3()
Dim SummarySheet As Worksheet, FolderPath As String, SelectedFiles(), NRow As Long, FileName

Set SummarySheet = Workbooks.Add(xlWBATWorksheet).Worksheets(1)
FolderPath = "C:\Users\Documents\ExcelVBApractice\"
ChDrive FolderPath
ChDir FolderPath
SelectedFiles = Application.GetOpenFilename(filefilter:="Excel Files (*.xl*), *.xl*", MultiSelect:=True)
NRow = 1
' Loop through the list of returned file names
For Each FileName In SelectedFiles
  With Workbooks.Open(FileName).Worksheets(1)

      'Copy over from the source to the destination.
      'Use:
      Intersect(.UsedRange, .Range("A:C,E:F,L:L")).Copy SummarySheet.Cells(NRow, 1)  ' can use this line instead of the 3 below - it copies everything, formats and all.
      'or these next 3 which copy over only the values (dates look ugly):

      'Intersect(.UsedRange, .Range("A:C,E:F,L:L")).Copy
      'SummarySheet.Cells(NRow, 1).PasteSpecial xlPasteValues
      'Application.CutCopyMode = False

    .Parent.Close savechanges:=False
  End With  'Workbooks.Open(FileName).Worksheets(1)
  'Update NRow:
  NRow = SummarySheet.UsedRange.Rows(SummarySheet.UsedRange.Rows.Count).Row + 1
Next FileName
SummarySheet.Columns.AutoFit
'Application.Goto SummarySheet.Cells(1, 1) 'this line only needed to select A1 if xlPasteValues is used above.
End Sub
Again see comments in code.