The problem is the macro name which conflicts with Word built-in functions, call it e.g. MyMerge and you should be OK, though your error handling is a little off - try
Code:
Sub MyMerge()
On Error GoTo err_Handler
If Not ActiveDocument.MailMerge.MainDocumentType = wdNotAMergeDocument Then
Dialogs(wdDialogMailMergeOpenDataSource).Show
With ActiveDocument.MailMerge
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = wdDefaultFirstRecord
.LastRecord = wdDefaultLastRecord
End With
.Execute Pause:=False
End With
Documents("C:\Documents\mytemplate.docm").Close SaveChanges:=wdDoNotSaveChanges
Else
MsgBox "Not a merge document"
End If
lbl_Exit:
Exit Sub
err_Handler:
If Err.Number = 4160 Then
MsgBox "The file specified is not open.", vbCritical Or vbOKOnly, _
"File Not Open"
End If
GoTo lbl_Exit
End Sub