The gaps are because Excel keeps everything proportioned when you ask it to keep everything on one page. It will not fit the data to the width and then
stretch the data from top to bottom. Otherwise, your data would look completely screwed up!
Unfortunately I think whatup's suggestion is the only valid attempt at getting it to fit.
If there are not too many more rows to your print out- you could also tick off the 'Show Margins' under Preview. Then toggle the margins manually in an attmept to squeeze the last few rows on the page.