Hi everyone,

I'm hoping you can help me as someone whose very new to the big, wide world of VBA.

I have a number of Pivot Tables that draw data from a database which I'd like to conditionally format. Now I can conditionally format them using Excels built in conditional formatting - and I currently achieve this with a macro - however the Pivot Tables are rather large and the conditional formatting brings my PC to a halt. What I'd like to be able to do is run a VBA macro, when I manually refresh the pivot table, that permanently formats cells based on the same criteria I'm currently using in conditional formatting. That way the cells are the right colour, but there is no conditional formatting. Next time I refresh the data I'll run the macro again and so on...

I hope I've expressed that well enough. I've thought of two ways of doing such a thing:

i) First using the conditional formatting macro I currently use (pasted below) and the somehow bake the formatting in. I have found snippets around the internet of such a "baking in" method however they sadly only seem to work for Excel 2003 and below (I'm on 2013), and I don't know how to go about modifying them for 2013

ii) Or alternatively having a new macro set the permanent formatting of the cell based on my criteria.


The current macro I use to set the conditional formatting is:

Please Login or Register  to view this content.
As you can see the conditional formatting formulas are quite computationally intensive, which is why my sheet is so slow, but they work very well otherwise and I'd prefer not to change them.


If anyone could give me some pointers it'd be very much appreciated.

Regards,
lankyfish