Minimizing Microsoft Outlook 2003 upon startup to the taskbar

Before anyone doesn't bother reading this YOU CANNOT USE THE OLD SET THE ICON TO BE MINIMIZED THING. Ok I wrote a Macro to minimize it which goes like this:

    ThisOutlookSession.ActiveExplorer.WindowState = olMinimized

Now how do I either get Outlook to start in my taskbar or to run the macro at the beginning and work?
Who is Participating?
giesekingConnect With a Mentor Commented:
I was able to force Outlook 2003 to minimize at startup using VBA script. Hit Alt-F11 to go to the VBA editor. Paste this sub in the "ThisOutlookSession" section:

Private Sub Application_Startup()
SendKeys ("% n")
End Sub

Now after Outlook loads it will minimize. I also use this next one to minimize instead of close when someone attempts to close outlook.

Private Sub Application_Quit()
Call Shell("C:\Program Files\Microsoft Office\OFFICE11\relaunchOL.bat", vbHide)
End Sub

Create C:\Program Files\Microsoft Office\OFFICE11\relaunchOL.bat and put these two lines in it:

Ping -n 1
"C:\Program Files\Microsoft Office\OFFICE11\outlook.exe"

This will give Outlook a couple of seconds to close, then relaunch itself, then minimize itself sinse you have the macro for minimize in startup.

Hope this helps.
Not sure if this would help

go to start --> run --> typein:  outlook.exe /autorun <macroname>
This will start macro to run once outlook starts..

do you want to run the macro before even outlook starts.. not sure if that is possible or not
beechhornAuthor Commented:
I want to run the macro after outlook opens. If I run my macro using autorun outlook doesn't use it - it runs too soon try it out for yourself. I can use the msgbox "hi there" command to test if the command runs and it does but it runs too soon because outlook messes about and forces itself maximised.
Receive 1:1 tech help

Solve your biggest tech problems alongside global tech experts with 1:1 help.

I might suggest writing a batch file for this purpose. If you are like me, I like outlook to start when my computer I'd open notepage and type the following...

START "C:\Program Files\Microsoft Office\OFFICE11\OUTLOOK.EXE"
TYPE NUL | CHOICE.COM /N /CY /TY,5 >NUL                   ; This adds a 5 second delay
START <put your macro here>

then save the notepad file as "Outlook.bat" ... and put it in your startup folder...or anywhere you want to start outlook minimized from.
Have you tried Application_Startup() event of Outlook?
beechhornAuthor Commented:
All of these suggestions I have tried. Can people only reply if they have actually got a solution to work with Microsoft Outlook 2003 PLEASE.
beechhornAuthor Commented:
Hat off. Well done! Wish I was still offering the points...
I discovered something that needs a slight adjustment the other day when I put a new router between my PC and modem. Seems that pinging one time wasn't causing enough delay before outlook could completely close before reopening it. I changed "Ping -n 1"  to "Ping -n 4". You can adjust that last number accordingly to get the right amount of time to pause before attempting to relaunch outlook. If your script relaunches outlook too soon you will get a operation failed dialog box.
beechhornAuthor Commented:
You can also just write a simple 10 line app (in C++) that finishes executing when the process outlook.exe goes into sleep.
All Courses

From novice to tech pro — start learning today.