macro runs slower on startup than after

Status
Not open for further replies.

Vash

Member
Outlook version
Outlook 2016 32 bit
Email Account
Exchange Server
Hi all,

Apologies, but there may be two parts to this question..

In Outlook 2010, I cobbled together a macro from a series of code snippets and some of my own volition, and everything "works" (subjective term).

Basically the macro constructs a calendar and adds appointments from a group of users calendars who've tagged selected appointments with a certain category. I don't have issues with the macro itself (at least I don't think so...), my questions are relating to running this macro at start-up, and possibly about some changes between Outlook 2010 and 2016.

First, running the macro from the Outlook VB editor, the code takes ~9 seconds to run (Timer calls at start and end). This is about the same for Office 2010 and 2016.

I have also configured the macro to run on Application_Startup() -- well in a round about way from code I must admit I don't quite fully understand all the mechanics/implications of:
Rich (BB code):
Private Sub Application_Startup()
    Debug.Print ("Starting Handler: " & Time)
    mySyncInstance.Initialize_handler
End Sub

And then I have a Class module:
Rich (BB code):
Sub Initialize_handler()
 Set mySync = Application.Session.SyncObjects.Item(1)
 mySync.Start
End Sub

Private Sub mySync_SyncEnd()
Call makeGroupCalendar
End Sub

And another module with the actual makeGroupCalendar() code.

I forget why I went/needed to go this SyncObject route - I think it was something about making sure I had fully connected to the exchange server before trying to access members calendars. But, the end result is what I want, the macro is ran automatically on start-up and builds the calendar.

However, looking at the VBE Immediate Window after start-up, the macro takes ~25 seconds to run. I get that on start-up there are probably lots of things that need to happen, and the code has DoEvents within the loop to keep Outlook 'responsive' while the macro is running.

Now, in Outlook 2010, this wasn't such an issue, the DoEvents seemed to 'do their job' and Outlook was still responsive (a little laggy, but usable while macro ran). In Outlook 2016, it is unworkable. It's as if the DoEvents aren't honored, and the entire Outlook locks-up for the 25 seconds while the macro runs.

So, has anything changed in the use of DoEvents between 2010 and 2016? Can anyone suggest a reason why code that runs in ~9 seconds manually after start-up takes ~25 seconds on start-up?

Cheers
 
I don't know if Michael is around - he could answer this better than I could. As far as I know, nothing changed that should change how doevents works.

For what it's worth, I would probably do something to trigger it after outlook is up and running - maybe trigger it by a reminder.
 
Thanks Diane, I think at one stage I looked into triggering on reminders in Outlook 2010, but never made the switch. I’m trying to make this as un-obtrusive for a group of users to use - but then change to Outlook 2016 has made this unworkable!

cheers
 
I don't know if Michael is around - he could answer this better than I could. As far as I know, nothing changed that should change how doevents works.

For what it's worth, I would probably do something to trigger it after outlook is up and running - maybe trigger it by a reminder.

I've now made this trigger on a reminder (following Running Outlook Macros on a Schedule but creating a Task instead of Appointment). It seems regardless of how long I choose to delay the code execution after start up, the first time the calendar macro is run it takes 25 seconds, and subsequent re-runs take 9 seconds.

Still no luck with DoEvents, while macro is running I cannot select new mail and have the preview load in the reading pane?
 
Status
Not open for further replies.
Similar threads
Thread starter Title Forum Replies Date
J Macro only runs within VBA Editor Outlook VBA and Custom Forms 2
X Custom icon (not from Office 365) for a macro in Outlook Outlook VBA and Custom Forms 1
X Run macro automatically when a mail appears in the sent folder Using Outlook 5
mrrobski68 Issue with Find messages in a conversation macro Outlook VBA and Custom Forms 1
G Creating Macro to scrape emails from calendar invite body Outlook VBA and Custom Forms 6
M Use Macro to change account settings Outlook VBA and Custom Forms 0
J Macro to Reply to Emails w/ Template Outlook VBA and Custom Forms 3
C Outlook - Macro to block senders domain - Macro Fix Outlook VBA and Custom Forms 1
Witzker Outlook 2019 Macro to seach in all contact Folders for marked Email Adress Outlook VBA and Custom Forms 1
S macro error 4605 Outlook VBA and Custom Forms 0
A Macro Mail Alert Using Outlook 4
J Outlook 365 Outlook Macro to Sort emails by column "Received" to view the latest email received Outlook VBA and Custom Forms 0
J Macro to send email as alias Outlook VBA and Custom Forms 0
M Outlook Macro to save as Email with a file name format : Date_Timestamp_Sender initial_Email subject Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro GoTo user defined search folder Outlook VBA and Custom Forms 6
D Outlook 2016 Creating an outlook Macro to select and approve Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to send an Email Template from User Defined Contact Form Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to check Cursor & Focus position Outlook VBA and Custom Forms 8
V Macro to mark email with a Category Outlook VBA and Custom Forms 4
M Outlook 2019 Macro not working Outlook VBA and Custom Forms 0
S Outlook 365 Help me create a Macro to make some received emails into tasks? Outlook VBA and Custom Forms 1
Geldner Send / Receive a particular group via macro or single keypress Using Outlook 1
D Auto Remove [EXTERNAL] from subject - Issue with Macro Using Outlook 21
V Macro to count flagged messages? Using Outlook 2
sophievldn Looking for a macro that moves completed items from subfolders to other subfolder Outlook VBA and Custom Forms 7
S Outlook Macro for [Date][Subject] Using Outlook 1
E Outlook - Macro - send list of Tasks which are not finished Outlook VBA and Custom Forms 3
E Macro to block senders domain Outlook VBA and Custom Forms 1
D VBA Macro to Print and Save email to network location Outlook VBA and Custom Forms 1
N VBA Macro To Save Emails Outlook VBA and Custom Forms 1
N Line to move origEmail to subfolder within a reply macro Outlook VBA and Custom Forms 0
Witzker Outlook 2019 Macro to answer a mail with attachments Outlook VBA and Custom Forms 2
A Outlook 2016 Macro to Reply, ReplyAll, or Forward(but with composing new email) Outlook VBA and Custom Forms 0
J Macro to Insert a Calendar Outlook VBA and Custom Forms 8
W Macro to Filter Based on Latest Email Outlook VBA and Custom Forms 6
T Macro to move reply and original message to folder Outlook VBA and Custom Forms 6
D Autosort macro for items in a view Outlook VBA and Custom Forms 2
S HTML to Plain Text Macro - Help Outlook VBA and Custom Forms 1
A Macro to file emails into subfolder based on subject line Outlook VBA and Custom Forms 1
N Help creating a VBA macro with conditional formatting to change the font color of all external emails to red Outlook VBA and Custom Forms 5
S Visual indicator of a certain property or to show a macro toggle Outlook VBA and Custom Forms 2
L Modifying VBA script to delay running macro Outlook VBA and Custom Forms 3
S Macro to extract and modify links from emails Outlook VBA and Custom Forms 3
M Replyall macro with template and auto insert receptens Outlook VBA and Custom Forms 1
L Macro to add Date & Time etc to "drag to save" e-mails Outlook VBA and Custom Forms 17
S Macro for Loop through outlook unread emails Outlook VBA and Custom Forms 2
Globalforester ItemAdd Macro - multiple emails Outlook VBA and Custom Forms 3
S Macro to extract email addresses of recipients in current drafted email and put into clipboard Outlook VBA and Custom Forms 2
Witzker HowTo start a macro with an Button in OL contact form Outlook VBA and Custom Forms 12
Witzker Macro to move @domain.xx of a Spammail to Blacklist in Outlook 2019 Outlook VBA and Custom Forms 7

Similar threads

Back
Top