Link to home
Start Free TrialLog in
Avatar of Chrißt'll Scholiers
Chrißt'll ScholiersFlag for Belgium

asked on

Excel 2013 VBA runtime vs Excel 2010 and 2007

Dears, ...

I build a re-rating application in VBA which ran perfectly under office 2010 even under office 2007, without loosing speed during run time.
The App re-rates "Customer calling record", the results which do come out are then used for analysis purposes. In fact it's a  full functioning Mini "Mobile Billing engine" which simulates several scenario's for financial optimisation purposes.
The tool  came in several versions, but worked "bug free" "fast" and "perfectly fine" on Office 2010 at a fast speed.
Due to company policy, I was forced to upgrade to office 2013 a few weeks ago, but since then the problems began.
VBA runs significantly slower, which make that simulation run times last now for several minutes instead of seconds. Big ones even take up to 30 min while in Office 2010, it was only a matter of a few minutes.

Funny thing is that the App starts fast, but slows down as scenario's and time are progressing. ( changing affinity/priority does not help)
In terms off optimizing, I did already all necessary to optimise on screenupdating, events, calculation,  you name it, ...

Does anyone have the same problem.  Problem is that my collegues are dependent on the app and the outcome, and currently, the App becomes too slow to work with, especially when larger simulations are required. Are there any know issues in VB 2013 where I should be aware off, and do you have any suggestions how to solve the issue.

Thank you and best regards
Chrißt'll
SOLUTION
Avatar of byundt
byundt
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Chrißt'll Scholiers

ASKER

The fact that the processors take up more also indicates that there are no real bottlenecks present.
Still all code always is waiting for improvement :)

/Chrißt'll
I've requested that this question be closed as follows:

Accepted answer: 0 points for Chrißt'll Scholiers's comment #a40590796

for the following reason:

He/She made me aware about other potential basic processes. He ignited another way of thinking
He/She made me aware about other potential basic processes. He ignited another way of thinking
You should reward some points for their effort.
done :)
If you have a series of subs running (e.g. MasterSub calls Sub1, Sub2, Sub3, etc.), make sure that only the first one (MasterSub) turns screen updating off. Your flickering might have been caused by statements within Sub1, Sub2, etc. that set Application.ScreenUpdating = False at the beginning and then Application.ScreenUpdating = True at the end.

Also, comment out any statements that turn screen updating back on. VBA will automatically turn screen updating back on when the last sub finishes running. I used to think it was a good habit to turn screen updating back on programmatically, but experience has taught me that it is better not to do so.
I normally use a driver routine that disables and enables screen updating.
Thank you, wiil also take this in consideration. Only thing what puzzles me is the fact the  app-speed keeps on going down and down as time progresses, ... , For me it is solved soo far, but still I wonder

/Chrißt'll
Try saving the file in xlsb format