Podrías revisar las FAQ's de este foro (Y/o usar el buscador del foro .. hay muchas propuestas hechas ..)
En general "Excel" vé como una estructura própia de datos a una tabla HTML común .. Es decir, si con PHP generas una tabla HTML con el resultado de tu consulta SQL y la guardas como un ".xls" .. Excel la interpretará con sus celdas y filas como así definas tu tabla HTML.
Algunas FAQ's que te podrían servir:
http://www.forosdelweb.com/showthrea...669#post240669 http://www.forosdelweb.com/showthrea...356#post254356
Y algo ya hecho completo:
http://www.phpclasses.org/browse/package/237.html
Un saludo,