Public Sub MergeSheets(SheetFrom, SheetTo, Optional ToColumnToUse, Optional FromRow, Optional ValuesOnly As Boolean = False)
If IsMissing(ToColumnToUse) Then
    ToColumnToUse = 1
End If
If IsEmpty(ToColumnToUse) Then
    InputStop = 0
    Do Until InputStop > 0
        Test = InputBox("Enter From Column To Use for Row Counter")
        If IsNumeric(Test) Then
            InputStop = Test
        End If
    Loop
    ToColumnToUse = InputStop
End If
If Not IsNumeric(ToColumnToUse) Then
    InputStop = 0
    Do Until InputStop > 0
        Test = InputBox("Enter From Column To Use for Row Counter")
        If IsNumeric(Test) Then
            InputStop = Test
        End If
    Loop
    ToColumnToUse = InputStop
End If
If IsMissing(FromRow) Then
    FromRow = 1
End If
If IsEmpty(FromRow) Then
    InputStop = 0
    Do Until InputStop > 0
        Test = InputBox("Enter From Row To Use for Column Counter")
        If IsNumeric(Test) Then
            InputStop = Test
        End If
    Loop
    FromRow = InputStop
End If
If Not IsNumeric(FromRow) Then
    InputStop = 0
    Do Until InputStop > 0
        Test = InputBox("Enter From Row To Use for Column Counter")
        If IsNumeric(Test) Then
            InputStop = Test
        End If
    Loop
    FromRow = InputStop
End If
TargetRow = ThisWorkbook.Sheets(SheetTo).Cells(Rows.Count, ToColumnToUse).End(xlUp).Row
TargetRow = TargetRow + 1
MergeAreaColEnd = ThisWorkbook.Sheets(SheetFrom).UsedRange.Columns(ThisWorkbook.Sheets(SheetFrom).UsedRange.Columns.Count).Column
LongestColumn = 0
For X = 1 To MergeAreaColEnd
    If ThisWorkbook.Sheets(SheetFrom).Cells(Rows.Count, X).End(xlUp).Row > LongestColumn Then
        LongestColumn = ThisWorkbook.Sheets(SheetFrom).Cells(Rows.Count, X).End(xlUp).Row
    End If
Next
MergeAreaRowEnd = ThisWorkbook.Sheets(SheetFrom).Cells(Rows.Count, LongestColumn).End(xlUp).Row
ThisWorkbook.Sheets(SheetFrom).Range(Cells(FromRow, 1).Address(), Cells(LongestColumn, MergeAreaColEnd).Address()).Copy
If ValuesOnly = True Then
    ThisWorkbook.Sheets(SheetTo).Cells(TargetRow, ToColumnToUse).PasteSpecial Paste:=xlValues
Else
    ThisWorkbook.Sheets(SheetTo).Cells(TargetRow, ToColumnToUse).PasteSpecial Paste:=xlPasteAllUsingSourceTheme
End If
ThisWorkbook.Sheets(SheetTo).Activate
ActiveWindow.ScrollRow = TargetRow
ActiveWindow.ScrollColumn = 1
End Sub
