Sub RunMacro_NoArgs() 'Macro purpose: Use the application.run method to execute 'a macro without arguments from another workbook Dim PathToFile As String, _ NameOfFile As String, _ wbTarget As Workbook, _ CloseIt As Boolean 'Set file name and location. You will need to update this info! NameOfFile = "OtherWorkBook.xlsm" PathToFile = "C:\Users\logit\OneDrive\Desktop" 'Attempt to set the target workbook to a variable. If an error is 'generated, then the workbook is not open, so open it On Error Resume Next Set wbTarget = Workbooks("OtherWorkBook.xlsm") If Err.Number <> 0 Then 'Open the workbook Err.Clear Set wbTarget = Workbooks.Open(PathToFile & "\" & "OtherWorkBook.xlsm") CloseIt = True End If 'Check and make sure workbook was opened If Err.Number = 1004 Then MsgBox "Sorry, but the file you specified does not exist!" _ & vbNewLine & PathToFile & "\" & "OtherWorkBook.xlsm" Exit Sub End If On Error GoTo 0 'Run the macro! (You will need to update "MacroName" to the 'name of the macro you wish to run) Application.Run (wbTarget.Name & "!helow") If CloseIt = True Then 'If the target workbook was opened by the macro, close it wbTarget.Close savechanges:=False Else 'If the target workbook was already open, reactivate this workbook ThisWorkbook.Activate End If End Sub