If you could edit the data, the first thing I would do is remove those blank
rows--and remove the subtotals that were inserted manually (if there are any).
Then use Data|subtotals to get the subtotals.
If you can do this, maybe you could just sort the data and the blank rows should
be grouped together and then you can just delete them in one go.
If you can't do that, maybe you can use data|filter|autofilter and filter to
just show the rows that should be deleted. Then delete those visible rows.