In answer to your question, I still think it is the time it takes
unnecessarily hiding blank rows.
To get it to work reliably I had to prefix all the lines of code with
Cells(i + 1, 1).EntireRow.Hidden
With
Sheet13.
Making them, for example
Sheet13.Cells(i, 1).EntireRow.Hidden = False
I still find that it does not work quite as you say it should. I think the
code I have may be missing something as it unhides the final row of 5lane
regardless, rather than unhiding the last row of the model chosen. I am sure
you will sort this out.
If you are still having problems with the time taken, you could put a
breakpoint on the first "While Not "line of code, run it, press f5 a few times
and then see what it is doing and where. At this point step through with f8
and keep looking at the variables. The variable "i" will tell you what row
you are on.