VBA自动合并不同excel文件同一个位置的数据

Sub Merge()
    Dim DestWB As Workbook, WB As Workbook, WS As Worksheet, SourceSheet As String
    Set DestWB = ActiveWorkbook
    SourceSheet = "Input"
    Dim val
    Dim tmpval
    FileNames = Application.GetOpenFilename( _
    filefilter:="Excel Files (*.xls*),*.xls*", _
    Title:="Select the workbooks to merge.", MultiSelect:=True)
    If IsArray(FileNames) = False Then
        If FileNames = False Then
            Exit Sub
        End If
    End If
    For n = LBound(FileNames) To UBound(FileNames)
        Set WB = Workbooks.Open(Filename:=FileNames(n), ReadOnly:=True)
        Set WS = WB.Worksheets(1)
        With WS
            If .UsedRange.Cells.Count >= 1 Then
                val = .Range("A1").Value
                tmpval = DestWB.Worksheets("merge").Range("A1").Value
                DestWB.Worksheets("merge").Range("A1").Value = tmpval + val
            End If
        End With
        WB.Close savechanges:=False
    Next n
End Sub