maybe I misunderstood what you are after but wouldn´t it be faster to use Autofilter and check if any data was found and only copy the visible cells over?
I changed the values for dataRow and outputRow as well as had a ltlle bit of code overworked (different If..End If and moved the augment of the range to check out of there. Please try this code on a copy of your workbook:
Don't forget to mark threads as "Solved" (Thread Tools->Mark thread as Solved)
Use code tags when posting your VBA code: [ code ] Your code here [ /code ] (without the spaces inside the brackets)