PHPのライブラリ等でも.xls形式のファイルを生成するものがありますが、HTMLのテーブルに組んだものなら、
http://www.bricklife.com/weblog/000051.html にある通り、
WebアプリからHTML出力する時に、HTTPヘッダーに以下の2行を加えるだけです。
Content-Type: application/vnd.ms-excel
Content-Disposition: attachment; filename="hoge.xls"
そうです。要は ExcelやWordの HTML読み込み機能を使って、直接開かせているだけです。簡単でしょ?(^^
でも、table は結構しっかりとした表になりますし、フォントや色にも対応してくれます。なにより、適当に幅とかを整形して出力してくれるのが助かります。
本当にその通り、ちゃんと動きました。