I think I posted this one other time, but here's one that works good:
If Not Program Name "EXCEL.EXE" running
Program Launch: "EXCEL.EXE"
Variable Set Integer %N1% to 1
Write Registry Integer: ""
Macro Stop
End If
Read Registry Integer: "State"
Variable Set String %T1% "Microsoft Excel"
If Variable %N1% = 0
Window Show: "%T1%"
Activate Window: "%T1%"
Variable Modify Integer: %N1% = %N1% + 1
Write Registry Integer: "State"
Else
Window Hide: "%T1%"
Variable Modify Integer: %N1% = %N1% + -1
Write Registry Decimal: "State"
End If
Registry value would be something like:
HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Excel\State
You could program its creation but since you only need create it once, just regedit, add value DWORD "State" or whatever you want to call it.
Attach it to a hotkey.
What it does:
If program not running, runs it (you don't need to activate it, just have it maximized or normal)
If running and visible, hides it.
If running and not visible, shows it.
It will not appear in the taskbar or system tray so you just have to know it's there.
If you don't want it to open on top, leave out the "activate"
If you're not comfortable putting something in the registry, you could do it other ways but this is completely safe in CURRENT_USER keys.
I've got a bunch of these because I just don't like my taskbar cluttered with stuff I know is around.