You can 'cal' from everywhere.

Sub M_start() 
    ThisWorkbook.M_snb 
End Sub

In thisworkbook codemodule:

Sub M_snb() 
    With getobject("G:\OF\Maindocument.docx") 
        .Mailmerge.execute 
        .close 0 
    End With 
End Sub
if the macro is in the sheet1 codemodule:

Sub M_start() 
    Sheet1.M_snb 
End Sub