Archive for August, 2018

Excel 2016 performance – even interestinger

Sunday, 19th August, 2018

I’m on a crusade to understand what is going on with Excel 2016 performance.

In summary its bad, like more than 10 times slower than Excel 2010 bad.

ie BAD.

I am only just scratching the surface, so I am sure I’ll find areas where 2016 is better … at least I hope I will…

My little cell selection test gave Excel 2016 2.6secs, Excel 2010 0.14secs.

Which I appreciate is indeed more than 10x, I could calc it exactly but it would take a couple of life times in Excel 2016,

But of course these are different machines so I need to understand how much is due to the machine. so I wrote a C++ console app (so limited windows, or .net influence).

It just adds some (vaguely) random numbers, so a bit dependent on that library, but in principle I don’t see a glaring reason why it can’t give me an approximation of the difference in speed between two machines.

This is it:

for (int n = 0; n < 1000 * 1000 * 1000; ++n) {
result += -70 + (std::rand() % (60 – 25 + 1));

It runs 14 seconds on my XP box and 15 on Win 10, so I think you could say the machines are comparable, roughly.

So the 10x slowness is pure Win10/E2016 then?

Well its a bit early to say, I think there is a video/graphics element so I’m going to develop some more tests.

I mean as it stands Excel is so so bad you could develop in VSTO without noticing a performance drop (unless its worse too).

I’ll keep you posted, ping me if you want this console exe to benchmark your machine.




Excel 2016 perf what the effing eff?

Thursday, 16th August, 2018

Well, I tried to resist, but shocked at the rank day to day performance of my shiny Win10E2016 toy I had to compare performance.

Obviously I haven’t done it properly, what would be the point in that?

But equally obviously I’m going to write about it as if it is indisputable fact.

I wanted a test that mimicked the slow UI response I was seeing so I selected the cells. I am in the throes of writing a more rounded benchmarking tool, but this was my first area of focus. Of course it ignores MTA etc etc, those tests are coming.

I’ll stick the code at the bottom. I would be delighted if you copied it into a new workbook module and ran it on your machine(s) and replied with the results and a hint about machine specs and Excel versions. Preferably in a clean Excel, not one shared with a workbook polluted with a quadzillion volatile VBA UDFs, or a million addins trapping the selectionChange event!

4 core i7 w 16GB RAM – W10E2016 – average of ten results 2.4 seconds

dual core i7 VM (with 500GB ram?(it thinks!)??) WXPE2010 av 0.14 secs

dual core i7 VM (with 500GB ram???) WXPE2003 av 0.12 secs

I ran it on a single screen in all cases, with just the VBA IDE visible. If the Excel grid is visible the performance is much worse.

I expected 2016 to be slower in this single threaded test, but not 10 times slower. What are they doing with all those cycles? (cryptomining???)



Here is that code, please please take a minute and let me know your results

(if you are using a lapper be sure it does not have some work dodging power/performance reducing profile set)

Public Sub multiLoop()
Dim x As Integer
Dim t As Single

For x = 1 To 10
t = Timer

CellEntryTest 3.1

Debug.Print Timer – t
Next x
End Sub

Public Sub CellEntryTest(seed As Double)
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)



Dim x As Long

For x = 1 To 1000
ws.Cells(x, 1).Select
ActiveCell.Value = (seed + x) * 2 * Rnd(2)
Next x

End Sub

Feel free to chip in if you are convinced this is an invalid test.

If you are seeing sub 1 second response you could bump up the loop to 10k, that is what I had it on until I came to test 2016! (mention that in you reply, or just divide by 10)


Excel 2016 Performance

Thursday, 2nd August, 2018

What’s your view on Excel 2016 performance and stability?

In particular Excel 2016 32bit on Win10 63 bit?

I’m talking about 365, so bang up to date, and what I am seeing is:

  • Excel or other Office apps freeze for around 4 minutes, once or twice most days
  • Too many styles will cause a workbook that would have dropped all formatting in 2010 will be unopenable and unrecoverable in 2016
  • Too many conditional format will crash 2016 completely, where 2010 would be bearable, but stable.
  • General calc speed seems slower
  • UI is laggy, even with all Win10 bullshit turned off
  • Excel VBA can completely freeze every running office application
  • Opening everything in the same Excel instance is a monumental ball ache
    • Opening everything in its own one is not much better
    • Why can’t we have the 2003 behaviour of opening in last activate instance??
    • debuggering from VS is pants, I don’t want all my dodgy xlls loading into my working Excel.  So back to run excel /e
  • Did YOU ask for cell selection change to be animated????????????
  • Can’t paste charts as live links any more?

So the intermittent freezes and the instability are my main issues, I’m back to saving my work every 2 to 3 minutes like in Excel 2000. And spending a fair chunk of my life waiting for stuff to calculate.

Overall I’m thoroughly underwhelmed, 2003 is still the best ever, but 2010 is starting to feel like a not too shabby vintage too (I never tried 2013, was it any good?). I reckon 2003 would utterly fly on my 16gb i7, well apart from the single threadedness.

(the 63 bit was a typo, but somehow seems appropriate as the odd bit seems to get dropped here and there on this combo.) Sadly I see Office gradually choking Excel, or as its new name Word(tables edition).

What are your experiences?

Which is your favourite Excel?

Is 64 bit more stable?



lets discuss it at DevelopExcel in October!