Eso mismo estoy haciendo yo.
Código PHP:
<?php
header("Pragma: ");
header('Cache-control: ');
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Content-type: application/vnd.ms-excel");
header("Content-disposition: attachment; filename="Tu_Nombre_De_Archivo.xls"");
?>
Código HTML:
<html>
<head>
<title>Tu Titulo
</title>
</head>
<body>
<TABLE BORDER="1">
<tr><td>celda11</td><td>celda12</td><td>celda13</td></tr>
<tr><td>celda21</td><td>celda22</td><td>celda23</td></tr>
</table>
</body>
</html>
todo eso va junto