I have been working recently with Salesforce, and generating Excel files was not working for me.
It should have been as easy as changing the apex:page contentType property, but its output was like:
"<table id="j_id0:j_id1" border="0" cellpadding="0"...."
My problem was using <apex:column>whatever</apex:column>.
Instead, you should use <apex:column value="whatever" /> and it should work.
Hope this helps.