Run an Excel Macro

with AutoHotkey

by Denis Lamarre
last updated December 6, 2018
difficulty.png easy

Description

You have created the perfect time-saving Excel macros and now you want to trigger them with AutoHotkey. This simple script shows you one way of doing it.

Steps

1

overlay-um-macro.gifPrepare your overlay
Choose an unassigned key on the Enterpad for the Excel macro. Use an appropriate name like "Macro1".

2

Code installation
Copy and paste the following script in the AutoHotkey script template (Enterpad.ahk) at the location of the key you wish to assign.

001:
  IfWinNotActive, ahk_class XLMAIN
  {
    MsgBox % "Excel is not active. No action will be performed."
  Return
  }
  try
    epExcel := ComObjActive("Excel.Application")
  catch
  {
    MsgBox % "Unable to execute the shortcut."
    Return
  }
  try
    epExcel.Run("Macro1")
  catch
  {
    MsgBox % "Unable to run the macro. Are you editing a cell?"
  }
  epExcel :=
return

More Info

The Excel macro should be triggered if:

If you would like to add a parameter to the macro when it is triggered, just modify line #15 of the script (step 2) from

epExcel.Run("Macro1")
        

to

epExcel.Run("Macro1", "Param1")
        

And replace Param1 with the value of the parameter.