It looks like some of the code could be replaced with autofill.
Could be replaced with something like.
You probably wouldn't want to fill the whole worksheet though. Determine used range as noted by mudraker.
This may work for other items too. I didn't really read closely enough to understand exactly what you're doing.
Also, I suspect that you could speed things up if you change the way you reference ranges.
Could be replaced with
You may also want to change the loop to start at 10 so you don't have to add 10 to I.
Be careful with .usedrange, if there is any formatting done to areas of the worksheet, excel will include this in the used range. Even if they don't contain any data. Mudraker's method for determining last used row will be more accurate. I usually use .usedrange because it's easier to type in.
Actually, after a quick test, it doesn't look like changing Range("D" & I +10) will save any time.
I'm not really sure but I'm under the impression that it would be quicker to store all the information in an array then write it to the worksheet in a single step. This may complicate things a bit though.
Bookmarks